在名称空间中处理名称空间模型类

问题描述

| 我正在使用Ruby on Rails 3,并且想处理名称空间中的模型(类)名称空间。也就是说,如果我有一个名为NS1的名称空间和该名称空间为NS2的\“ sub-namespace \”,我想在NS2中处理模型(类)。 如果我运行脚手架
rails generate scaffold ns1/ns2/Article id:integer title:string
它将生成以下模型文件
models/ns1/ns2/article.rb file
models/ns1/articles.rb
models/ns1/articles.rb
包含:
module Ns1::Articles
  def self.table_name_prefix
    \'ns1_articles_\'
  end
end
什么是
models/ns1/articles.rb
文件?我如何以及为什么可以使用它?您有使用建议吗? 而且,通常,使用Ruby on Rails处理名称空间中“组合”类的“最佳”方法是什么?     

解决方法

的   型号/ns1/articles.rb 基本上是为该名称空间下的所有模型类设置表名前缀。多数民众赞成在使用。在那里(在单个文件中)要做的事更多,而不是在该命名空间下的每个模型类中设置前缀。 我不是在模型中使用名称空间的忠实拥护者。但是,您可以参考以下文章,以更好地了解如何在模块中使用名称空间。 命名空间模型和控制器 在模型中使用名称空间的一些替代方法 命名空间模型的简单替代 希望这可以帮助。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...