activerecord - Rails 3.1.1 ActiveRecord table_name= 不起作用

标签 activerecord ruby-on-rails-3.1

我在这个问题上卡住了很长一段时间:

class Something< ActiveRecord::Base
  table_name= "different_name"
end

它没有用,说表'Something'不存在(这是真的),直到我把那条注定的线改成

  set_table_name "different_name"

这没问题,除了 Rails Guide声称 set_table_name 是“Also aliased as: table_name=”。

现在,我是 Rails 的新手,但是“也别名”是什么意思?或者这只是一个错误?

最佳答案

您需要执行 self.table_name = "different_name" 才能使用该表格。这是一个 ruby​​ 的东西:它正在分配一个局部变量 table_name 而不是实际调用该方法。

关于activerecord - Rails 3.1.1 ActiveRecord table_name= 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8112987/

相关文章:

ruby-on-rails - has_one :through => multiple

ruby-on-rails - 在rails中创建一个表并添加外键约束

ruby-on-rails - 如何将 Mercurial 嵌入到新的行动中而不丧失使用选定领域的能力?

ruby-on-rails - Rails 3.1 升级后的 ActionView::MissingTemplate

ruby-on-rails - after_commit 真的运行了吗?

ruby-on-rails - Rails 外键违规删除具有依赖销毁的 has_many 关系

mysql - Heroku 部署问题 Sharetribe

ruby-on-rails - 数据库管理 Ruby On Rails

ruby-on-rails - 如何将序列添加到迁移并在模型中使用它们?

ruby-on-rails - 关联语法 ruby​​ on rails 复数