我有一个嵌套模型系统和一个静态页面。
我的模型是:
用户型号:
has_many :collections
has_many :designs, :through => :collections
收藏型号:
belongs_to :user
has_many: designs
设计型号:
belongs_to :user
belongs_to :collection
静态页面应该显示所有用户的设计,它确实如此。不幸的是,链接已损坏,但我相信它们是正确的链接,我只是在控制器中做错了。
这是显示所有设计的页面的静态页面控制器:
def home
if signed_in?
@designs = Design.all
end
end
我还尝试在该行之前添加这些行(不同时间)@designs
:
@collection = Collection.all
@collection = Collection.find(params[:collection_id])
这是静态页面的视图(至少是表单):
<% @designs.each do |design| %>
<fields are here>
<% end %>
为什么链接断开?如前所述,除了链接之外,页面上的所有内容看起来都很棒。
展示设计:
link_to collection_design_path(@collection, design)
但这变成:
myURL/collections//designs/:id
它应该看起来像:
myURL/collections/:id/designs/:id
第一个 id 是 the collection_id
,第二个 id 是 the design_id
:
编辑:
链接中未使用集合 ID。