Users
有很多Instruments
,但是Instruments
是静态的,所以我想通过引用定义的常量数组而不是从数据库中检索它们来使用它们。这个数组需要被Views和Controllers访问。
我也觉得填充一堆随机不相关的常数bootstrap
是一团糟。
最好的方法是什么 - 我应该把这个数组放在哪里?
Users
有很多Instruments
,但是Instruments
是静态的,所以我想通过引用定义的常量数组而不是从数据库中检索它们来使用它们。这个数组需要被Views和Controllers访问。
我也觉得填充一堆随机不相关的常数bootstrap
是一团糟。
最好的方法是什么 - 我应该把这个数组放在哪里?
如果您想使用某种枚举,我猜您正在寻找:http: //www.dereuromark.de/2010/06/24/static-enums-or-semihardcoded-attributes/
public static function instruments {}
但在您的情况下,仪器不应该是静态的,而是一个带有数据的真实表(仪器属于用户 - 例如具有相同 user_id 的多行)。枚举只能以相反的方式工作(在 belongsTo 关系上)。
还是有特定的原因它必须是静态的?您的问题的主要问题是如何正确存储数据。哪些仪器属于哪些用户?
如果您真的想将这样的数组列表存储在用户的单个列中(在您的情况下我不建议这样做),您可以使用位掩码: http: //www.dereuromark.de/2012/02/26 /bitmasked-using-bitmasks-in-cakephp/
使用数组数据源。它允许您定义静态数据数组并仍然使用关联。