2013-08-29 34 views
7

Cố gắng để carmen_rails hoạt động và thêm quốc gia và tiểu vùng (tiểu bang) vào đăng ký người dùng gia đình của tôi và gặp một vấn đề mà tôi đang gặp phải bất kỳ tìm kiếm trực tuyến nào (ít nhất là từ những gì tôi có thể tìm thấy).carmen_rails country_select sai số đối số (3 cho 0)

cài đặt

gem 'carmen-rails', '~> 1.0.0' 

Tiếp theo các hướng dẫn github (https://github.com/jim/carmen-rails), các mã sau đây cần được chèn vào trang đăng ký của tôi:

<%= simple_form_for @user do |f| %> 
    <%= f.input :country_code do %> 
    <%= f.country_select :country_code, {object: f.object, prompt: 'Country'} %> 
    <% end %> 
<% end %> 

Tôi hiện đang sử dụng Rails 4.0.0 và Bootstrap 3 RC2 để mã đăng ký của tôi trông như thế này (cùng với thiết lập biểu mẫu chuẩn):

<div class="form-group"> 
    <%= f.label :country, class: "col-md-4 control-label" %> 
    <div class="col-md-8"> 
    <%= f.country_select :country, {priority: %w(US CA), prompt: "Please select a country", class: "form-control"} %> 
    </div> 
</div> 

và xác nhận phần từ ứng dụng/mô hình/user.rb

validates :country, presence: true 
validates :subregion, presence: true 

tôi nhận được báo lỗi dưới đây và không thể tìm ra nguyên nhân gốc rễ hoặc độ phân giải. Bất kỳ trợ giúp nào cũng được đánh giá rất cao!

wrong number of arguments (3 for 0) 

tôi đã nhận được báo lỗi dưới đây, nhưng nghĩ rằng nó đã được giải quyết bằng cách khởi động máy chủ ray

undefined method `country_select' for .. 
+0

Bạn có thể đăng toàn bộ dấu vết của lỗi này? – vee

Trả lời

21

Tôi có vấn đề này cùng một ngày hôm nay. Sau một chút đào, có vẻ như vấn đề này đã được sửa trong nguồn, nhưng viên ngọc chưa được cập nhật tại RubyGems.org.

Sửa GEMFILE của bạn để kéo trực tiếp từ Github:

gem 'carmen-rails', '~> 1.0.0', github: 'jim/carmen-rails' 

Sau đó chạy bundle install, sau đó bundle clean để loại bỏ các phiên bản cũ, và sau đó khởi động lại máy chủ của bạn. Phiên bản Github và phiên bản RubyGems.org đều giống nhau, nhưng điều này đã giải quyết nó cho tôi.

+0

Điều này cũng áp dụng cho subregion_select trong đường ray 4, nó hoạt động như mong đợi chỉ khi bạn kéo Gemfile từ Github. –

0

Trong trường hợp của tôi, người phạm tội là Hoạt động giàn giáo. tôi đã thoát khỏi nó thêm này:

ActiveScaffold.exclude_bridges = [:country_helper] 

trong config/initializers/active_scaffold.rb

Các vấn đề liên quan