ruby-on-rails – 如何在关注点(或模块中)访问模型名称?
发布时间:2020-12-17 03:16:29 所属栏目:百科 来源:网络整理
导读:我在rails应用程序中有以下问题: module Authenticable extend ActiveSupport::Concern included do # ... end module ClassMethods def quoted_table_name self.class.name.downcase.pluralize # returns "classes" end endend 如果我有一个用户类: class
我在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 如果我有一个用户类: class User include Authenticable end 然后我可以像User.quoted_table_name一样返回“用户”.目前,User.quoted_table_name返回“类”.我也试过以下,但没有改变. def quoted_table_name Proc.new { self.class.name.downcase.pluralize }.call end 解决方法
请尝试以下方法:
module Authenticable ... module ClassMethods def quoted_table_name name.downcase.pluralize # returns "users" end end end self.class.name.downcase.pluralize不起作用,因为我们已经在User-class的类端操作.在向User-class询问其类时,返回Class.但是,Class.name.downcase.pluralize是“类”. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |