Rails 3.1.1 ActiveRecord table_name =不起作用

zmi*_*jko 2 activerecord ruby-on-rails-3.1

我被困了很长一段时间:

class Something< ActiveRecord::Base
  table_name= "different_name"
end
Run Code Online (Sandbox Code Playgroud)

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

  set_table_name "different_name"
Run Code Online (Sandbox Code Playgroud)

这没关系,除了Rails指南声称set_table_name是'也别名为:table_name ='.

现在,我是rails的新手,但那个'也有别名'是什么意思?或者这只是一个错误?

Xav*_*hay 7

您需要self.table_name = "different_name"使用该表单.这是一个红宝石:它分配一个局部变量table_name而不是实际调用该方法.