ActiveModel::Naming
module ActiveModel::Naming
Active Model Naming
Creates a model_name
method on your object.
To implement, just extend ActiveModel::Naming in your object:
class BookCover extend ActiveModel::Naming end BookCover.model_name.name # => "BookCover" BookCover.model_name.human # => "Book cover" BookCover.model_name.i18n_key # => :book_cover BookModule::BookCover.model_name.i18n_key # => :"book_module/book_cover"
Providing the functionality that ActiveModel::Naming provides in your object is required to pass the Active Model Lint test- So either extending the provided method below, or rolling your own is required-
登录查看完整内容