以模型中定义的 rails select 形式显示全名

Display full name in rails select form defined in model

我正在开发 rails 5 个应用程序。我面临的问题是我正在定义一个下拉到 select 博客中另一个 table 的用户 form.The 关联如下。

blog.rb

has_many :blogs

def set_full_name
 self.full_name = [first_name, last_name].join(' ')
end

user.rb

belongs_to :user

问题出在这个 select 表单中,而不是只在下拉列表中显示 first_name,我要显示我定义的用户的 full_name在用户模型中。我该怎么做?

<%= form.collection_select :user_id, User.all, :id, :first_name, {prompt: "Select"}, autofocus:true, class: "form-control", id: "user" %>

您正在为文本 属性 呼叫 :first_name。使用 :full_name

<%= form.collection_select :user_id, User.all, :id, :full_name, {prompt: "Select"}, autofocus:true, class: "form-control", id: "user" %>