我有一个FuelPHP应用程序,其分层用户结构分为两层corporate
和store
。该应用程序包括一个允许自定义字段的票务系统。
自定义字段可以在corporate
级别和/或 store
级别定义。
在corporate
级别定义的自定义字段用作“默认”自定义字段。也就是说,<{1}}的权限范围内的任何store
未重写“默认”自定义字段都可以访问这些自定义字段。
在corporation
级别定义的自定义字段可以是:
store
级别)自定义字段corporate
级未定义的额外store
级别自定义字段昨天我写了逻辑来确定商店的正确字段。它从数据库中获取所有已定义的自定义字段,运行一些比较,并吐出一组适用于corporate
范围的自定义字段。
我最初在我的store
控制器中写了逻辑,但今天我意识到我需要
从应用程序中的其他区域访问该数据,通常是在没有Fields
控制器实例可用的情况下(没有明确创建一个)。
我通常回避在我的数据模型中加入太多逻辑,主要是因为我不确定它何时适合。但是,在这种情况下,我静态重写逻辑并将其作为Fields
方法放入我的Field
模型中。它有效,但我想确保我不会在这里做一些可怕的错误。
这是你在数据模型而不是控制器中放置的那种逻辑吗?我的想法是这样的:因为它在不操纵数据的情况下访问数据,是的,它属于数据模型。然而,如果我实际更改数据,它将属于控制器。这有意义吗?
我从for_store($id)
角度对最佳做法感兴趣。