0

在我看来,我有以下几点:

= form @user do |f|
  = f.label :name
  = f.text_field :name
  = f.fields_for :addresses do |f|
  = render "addresses", f: f 

在我的部分“_adresses.html.haml”中

????????????
  =f.label :city
  =f.text_field :city 

如何将“未选择”放入????????? 当我的操作是新的,当我的操作是编辑时,城市的名称?

如果我写:

= :city

它显示单词城市,而不是城市名称。

4

1 回答 1

1

您可以检查@user 是否为新记录(未保存在表中),您可以使用@user.persisted?,如果@user 已经在表用户中,则返回true。

你可以做:

if f.object.persisted? 
<h1> CITY NAME </h1> 
else 
<h1> NOT CHOOSEN <h1> 
end 

在地址部分。如果您在地址部分,要获取名称,请放在 :city 之后,f.object.city.name

于 2012-11-22T11:32:53.050 回答