我正处于为 magento 创建新模块的计划阶段。这将是我的第一个 magento 项目,虽然我不希望它变得复杂,但我想尝试并坚持最佳实践,这让我想到了这个问题。
我将创建的模块是一个通讯工具,具有用户可以编辑的各种选项。该项目将满足以下标准:
- 允许用户注册时事通讯
- 要注册,您不必成为该网站的会员
- 允许自动设置各种偏好
- 允许用户编辑设置的首选项
- 识别用户注册时所在的国家/地区
我的第一个想法是在不考虑任何现有模块的情况下创建模块,并添加两个表来存储用户详细信息和偏好。我已经决定这不是最好的主意,并假设使用时事通讯模块可能会更好?
可以接受使用原始 sql 来添加首选项吗?显然这样做我必须:
- 将几列添加到用户表以链接首选项和用户
- 添加一列以识别是否有成员或只是通讯订阅者
- 为用户首选项添加表格
这让我质疑使用核心表是否是不好的做法(我认为是)?
我的主要问题是:
- 我可以在 Magento 中研究/利用什么来完成第一个项目,而不会变得复杂?