Ruby on rails Rails f.同时选择saveid和Name
我有一个带有f.select选项的表单。当从选项中选择公司名称时,我想添加公司ID和公司名称。是否可以在f.select代码行中添加多个属性?这就是我的代码的外观:Ruby on rails Rails f.同时选择saveid和Name,ruby-on-rails,ruby,ruby-on-rails-3,activerecord,attributes,Ruby On Rails,Ruby,Ruby On Rails 3,Activerecord,Attributes,我有一个带有f.select选项的表单。当从选项中选择公司名称时,我想添加公司ID和公司名称。是否可以在f.select代码行中添加多个属性?这就是我的代码的外观: <div class="field"> <%= f.label 'Client' %> <%= f.select :client_id, Client.all.collect { |c| [ c.companyName, c.id ] } %> 我还想将companyName分配给my
<div class="field">
<%= f.label 'Client' %>
<%= f.select :client_id, Client.all.collect { |c| [ c.companyName, c.id ] } %>
我还想将companyName分配给my:companyName属性,但id是目前唯一保存的内容
谢谢。我想你可以用联想来做这件事。您应该有以下两种型号
class Company < ApplicationRecord
has_many :clients
end
class Client < ApplicationRecord
belongs_to :company
end
提交时,客户端id
将传递给控制器。然后,您可以找到与客户机和其他逻辑关联的公司
client = Client.find(params[:client_id])
company = client.company
# etc ..
我想你可以用联想来做这件事。您应该有以下两种型号
class Company < ApplicationRecord
has_many :clients
end
class Client < ApplicationRecord
belongs_to :company
end
提交时,客户端id
将传递给控制器。然后,您可以找到与客户机和其他逻辑关联的公司
client = Client.find(params[:client_id])
company = client.company
# etc ..
在表单提交的控制器操作中,您可以在保存或更新记录之前进行写入
params[:your_object][:companyName]=Client.find_by(id: params[:your_object][:client_id]).companyName
记住在强参数中添加参数[:您的对象][:companyName]
。e、 g
params.require(:your_object).permit(:client_id, ... , :companyName)
在进行任何操作之前,请确保您的客户机\u id
位于同一个对象中,并且是允许的,并将其应用于公司名称
属性
希望这对您的表单提交的控制器操作有所帮助,您可以在保存或更新记录之前编写
params[:your_object][:companyName]=Client.find_by(id: params[:your_object][:client_id]).companyName
记住在强参数中添加参数[:您的对象][:companyName]
。e、 g
params.require(:your_object).permit(:client_id, ... , :companyName)
在进行任何操作之前,请确保您的客户机\u id
位于同一个对象中,并且是允许的,并将其应用于公司名称
属性
希望这有帮助