我有一个愚蠢的问题,我不知道如何解决。
我正在使用fields_for
,每次编辑时,构建都会再次完成,我会重复使用属性。我只想要赞助商,如果它是第一次创建/更新,否则我希望他们只是更新。
我的观点
<%= f.input :sponsored %>
<%= f.fields_for :sponsors do |sponsor| %>
<%= sponsor.input :name, placeholder: "Marca", label: "Marca(s)" %>
<%= sponsor.input :description, placeholder: "Descripción de la marca", label: "Descripción" %>
<%= sponsor.input :web, placeholder: "Web" %>
<%= sponsor.input :facebook, placeholder: "Facebook" %>
<%= sponsor.input :twitter, placeholder: "Twitter" %>
<%= sponsor.input :sponsored_avatar, placeholder: "Avatar" %>
<% end %>
照片控制器
def edit
@photo = Photo.friendly.find(params[:id])
@photo.sponsors.build
end
由于
答案 0 :(得分:1)
代码中的一点是,Photo.friendly.find(params[:id])
已经创建了某个赞助商,然后当您@photo.sponsors.build
时,您正在添加一个空赞助商,因此,您只需要在{{1}时进行构建我没有赞助商,我认为这可以帮到你
Photo.friendly