Mel*_*Mel 10 ruby-on-rails simple-form
我正在尝试使用Rails和Simple Form创建一个带有country-select的应用程序.
我收到的错误是:
wrong number of arguments (4 for 0)
Run Code Online (Sandbox Code Playgroud)
我正在使用我找到的示例,在国家选择gem文档页面上的简单表单.我不明白出了什么问题.
在我的模型中,我有:
geocoded_by :address
after_validation :geocode, if: ->(obj){ @obj.address.present? and @obj.address_changed? }
def address
[city, state, participation_country].compact.join(', ')
end
Run Code Online (Sandbox Code Playgroud)
在我的表格中,我有:
<%= f.simple_fields_for :scope do |participants_s| %>
<%= participants_s.simple_fields_for :participant do |par| %>
<%= par.select :participation_country,
priority: ["AU", "GB", "NZ", "US"],
selected: :participation_country,
label: false,
prompt: "Select participation country" %>
Run Code Online (Sandbox Code Playgroud)
我使用时遇到同样的错误
<%= par.input :participation_country,
Run Code Online (Sandbox Code Playgroud)
在我看来,我有:
<%= @project.scope.participant.address %>
Run Code Online (Sandbox Code Playgroud)
在试图设置时,有谁能看到我做错了什么?错误消息表明有问题的行是:
<%= par.select :participation_country,
Run Code Online (Sandbox Code Playgroud)
除了建议的国家/地区代码,我无法计算4个,但我删除了其中一个尝试,但我得到了相同的错误.
当我尝试:
<%= par.country_select("participation_country", {:prompt => "Choose Country"})%>
Run Code Online (Sandbox Code Playgroud)
我得到了同样的错误:错误的参数数量(4表示0)
我也尝试删除country-select gem并安装country_select gem.使用简单形式的country_select gem的指南有这个例子:
country_select("user", "country", only: ["GB", "FR", "DE"])
Run Code Online (Sandbox Code Playgroud)
但是,简单表单的示例应用程序将其显示为:
<fieldset>
<legend>With Only Chosen Countries</legend>
<%= f.input :country_code, only: ["LV","SG"] %>
<code>f.input :country_code, only: ["LV","SG"]</code>
Run Code Online (Sandbox Code Playgroud)
当我尝试遵循示例应用程序以及指导样式时,我会收到无法识别方法的错误.
我终于搞定了这个.我删除了country-select gem(建议使用简单形式)并将其替换为country_select gem.此gem的wiki不使用与wiki上链接的示例应用程序匹配的语法.
这条线最终为我工作:
<%= par.input :participant_country, priority: ["AU", "NZ", "GB", "US"], label: false %>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3988 次 |
| 最近记录: |