Rails 上的参数数量错误(给定 2,预期 1)5
Wrong number of arguments (given 2, expected 1) on Rails 5
我正在将项目从 Rails 3 项目升级到 Rails 5。今天我遇到了奇怪的错误。
现在项目是 运行 Rails 5. 在项目中有模型 User
和 Article
。当我查询 User
模型时,一切正常:
User.all # returns all records
User.first # returns first record
但是当我查询 Article
模型时,每次查询都会出现相同的错误:
Article.all # ArgumentError: wrong number of arguments (given 2, expected 1)
Atricle.first # ArgumentError: wrong number of arguments (given 2, expected 1)
项目使用了devise
gem,User
模型是由这个gem创建的,但是Article
模型不是。
问题是我该如何调查这类问题?我应该使用什么方法来查找错误源?
P.S.
class Article < ApplicationRecord
extend FriendlyId
belongs_to :user
attr_accessor :active, :description, :meta_d, :meta_k, :photo, :short_desc, :title, :photo_cache, :article_category_id, :tag_list, :tag_ids
attr_accessor :main_slider, :main_photo, :main_photo_cache
friendly_id :title, use: :slugged
acts_as_taggable
def normalize_friendly_id(text)
text.to_slug.normalize(transliterations: :russian).to_s
end
belongs_to :article_category
end
问题出在 FriendlyId
gem,我必须将其升级到 5.2.0
版本
我正在将项目从 Rails 3 项目升级到 Rails 5。今天我遇到了奇怪的错误。
现在项目是 运行 Rails 5. 在项目中有模型 User
和 Article
。当我查询 User
模型时,一切正常:
User.all # returns all records
User.first # returns first record
但是当我查询 Article
模型时,每次查询都会出现相同的错误:
Article.all # ArgumentError: wrong number of arguments (given 2, expected 1)
Atricle.first # ArgumentError: wrong number of arguments (given 2, expected 1)
项目使用了devise
gem,User
模型是由这个gem创建的,但是Article
模型不是。
问题是我该如何调查这类问题?我应该使用什么方法来查找错误源?
P.S.
class Article < ApplicationRecord
extend FriendlyId
belongs_to :user
attr_accessor :active, :description, :meta_d, :meta_k, :photo, :short_desc, :title, :photo_cache, :article_category_id, :tag_list, :tag_ids
attr_accessor :main_slider, :main_photo, :main_photo_cache
friendly_id :title, use: :slugged
acts_as_taggable
def normalize_friendly_id(text)
text.to_slug.normalize(transliterations: :russian).to_s
end
belongs_to :article_category
end
问题出在 FriendlyId
gem,我必须将其升级到 5.2.0
版本