我在rails应用程序中有以下问题:
module Authenticable
extend ActiveSupport::Concern
included do
# ...
end
module ClassMethods
def quoted_table_name
self.class.name.downcase.pluralize # returns "classes"
end
end
end
Run Code Online (Sandbox Code Playgroud)
如果我有一个用户类:
class User
include Authenticable
end
Run Code Online (Sandbox Code Playgroud)
然后我想User.quoted_table_name回来"users".目前,User.quoted_table_name退货"classes".我也试过以下,但没有改变.
def quoted_table_name
Proc.new { self.class.name.downcase.pluralize }.call
end
Run Code Online (Sandbox Code Playgroud)
请尝试以下方法:
module Authenticable
...
module ClassMethods
def quoted_table_name
name.downcase.pluralize # returns "users"
end
end
end
Run Code Online (Sandbox Code Playgroud)
self.class.name.downcase.pluralize不起作用,因为我们已经在User-class 的类侧操作.当询问User-class的类时,Class返回.Class.name.downcase.pluralize然而,是"班级".
| 归档时间: |
|
| 查看次数: |
2168 次 |
| 最近记录: |