作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在许多 Controller 的编辑方法中,您初始化一个新对象并编辑现有对象
class MagazinesController < ApplicationController
def edit
@magazine = Magazine.find(params[:magazine_id])
@page = Page.find(params[:id])
@new_page = @magazine.pages.new
end
end
# magazines#edit
%h4 Existing pages
- @magazine.pages.each do |page|
%p= link_to page, page.title
pages
关联既包含现有(持久)页面,也包含我们通过
@new_page = @magazine.pages.new
创建的新页面.
%h4 Existing pages
- @magazine.pages.each do |page|
- if page.persisted?
%p= link_to page, page.title
%h4 Existing pages
- @magazine.pages.persisted.each do |page|
%p= link_to page, page.title
最佳答案
您可以在 Page 模型中创建 persisted
范围:scope :persisted, -> { where "id IS NOT NULL" }
,这避免了在每个关联页面上迭代以检查它是否是新记录。
关于ruby-on-rails - 您如何仅引用事件记录关联中的持久记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19842765/
我是一名优秀的程序员,十分优秀!