自定义用户偏好存储

Custom user preferences storage

我正在创建一个新的附加组件,其中将包含一些用户首选项。 假设每个用户可以从包含所有内容类别的列表中 select 多个类别。

我的目标是:

你能推荐存储这些数据的最佳方式吗?我可以在不更改注册和个人默认表格的情况下使用会员数据吗?或者更好地使用持久对象(导入持久对象)? (非常感谢任何示例。)

profiles/default/memberdata_properties.xml中:

<?xml version="1.0"?>
<object name="portal_memberdata">
  <property name="custom_topics" type="lines"></property>
</object>

您将创建一个升级步骤以导入 memberdata-properties

然后使用:

user = api.user.get(user_id)
user.getProperty("custom_topics")

获取值并

user.setMemberProperties({'custom_topics':list_of_selected_topics})

更新它们。

删除目录/卸载附加组件后,这些值仍会存储。 注册页面和个人偏好表格也没有变化,只有你想(通过扩展它们)。