ruby Rails:未定义的本地变量或方法,使用Country-State-Select gem

oxosxuxt  于 2023-08-04  发布在  Ruby
关注(0)|答案(1)|浏览(95)

我目前正在编写一个Rails应用程序,需要列出国家和相应的州/省。对于这个函数,我使用Country-State-Select gem。
我已将宝石包含在我的宝石文件中

gem 'country_state_select'

字符串
并安装了它

bundle install


但是,官方文档使用simple_form对象,而我使用的是默认的rails表单对象。
下面是我的country的表单字段,它工作得很好:

<%= form.label :country %>
<%= form.select :country_field, collection: CountryStateSelect.countries_collection %>


但是,state的表单字段如下:

<%= form.label :state %>
<%= form.select :state_field, CountryStateSelect.state_options(form: form, field_names: { country: country_field, state: state_field } ) %>


不断抛出错误:
未定义局部变量或方法“country_field”
下面是它在Country-State-Select gem文档中的简单表单实现,我试图将其转换为默认的rails表单对象:

<%= options = { form: f, field_names: { :country => :country_field, :state => :state_field } } 
f.input :state_field, CountryStateSelect.state_options(options) %>

eulz3vhy

eulz3vhy1#

我刚刚从这个Stack Overflow answer中的Country-Select-Select宝石的所有者Arvind Vyas那里了解到,这个宝石依赖于simple_form宝石。
所以最好的办法是将simple_form gem集成到应用程序中,或者寻找其他替代方案,因为我使用的默认rails表单不适用于该实现。

相关问题