在Rails中,如何在表单中检索嵌套对象标题

时间:2012-05-22 20:57:50

标签: ruby-on-rails ruby ruby-on-rails-3

在Rails中,我使用rails3-jquery-autocomplete gem在photos#edit表单上自动填充用户名所有者。我目前有这个代码

= f.autocomplete_field :user_id, autocomplete_user_username_photos_path

自动填充功能正常,但默认值为2(这是当前的user_id),当我尝试保存对象时,它会尝试发送用户名而不是该用户名的id。

是否有一种简单的方法可以在字段中显示用户名而不是id,因为关系已经完成并在保存时转换为id?

1 个答案:

答案 0 :(得分:1)

据我所知,您无法显示某些内容并使用 rails3-jquery-autocomplete 发送其他信息。我最后一次尝试,我最终做了自己的ajax自动完成。

但是,您可以保留原样,只需在保存照片之前通过用户名获取用户。它将花费你额外的数据库请求,但它可以解决问题。

在您的控制器中:

@photo.user = User.where(:username => params[:username]).first # not sure if you need .first here
@photo.save