0
我有一个Rails应用程序,它包含多个控制器(用于我的网站的不同页面)。一个普通文本页面的控制器,单独用于图库等。现在,我需要的是我的所有页面的可排序菜单。复杂导轨应用程序的可排序菜单
我创建的模型称为MenuItems
,其中有一个位置,数量和多态关联到所有需要排序的模型:
class MenuItem < ActiveRecord::Base
belongs_to :sortable, :polymorphic => true
end
问题是,一些的MenuItems的应指向相关模型实例本身(例如show
常规文本页面的动作),在这里我的关联将执行此操作。但我还需要在菜单中列出index
动作(如图库列表页面),并且要实现这一点,我需要在模型和控制器中编写一些复杂和不清晰的逻辑,或者为url
添加另一个字段,管理员填充这些网址的一种界面。
它看起来很笨拙,从我的经验来看,如果你用复杂的方式在rails中做某些事情,那么你做错了。但是最好的办法是什么?您通常如何处理应用程序中的复杂菜单?