为什么rails生成空模型?
我正在尝试生成一些模型,但它们是在没有属性的情况下生成的。
我使用的是linux系统,rails版本是:rails –version Rails 4.0.0
我尝试使用以下命令生成模型:
rails g scaffold Bsdsd description:string test:string oaso:integer
和
rails g model Asdsd description:string test:string oaso:integer
第一个导致这个空类模型的其他一切正常:
class Bsdsd < ActiveRecord::Base end
第二个结果是测试文件,迁移文件(包含属性)和此类模型:
class Asdsd < ActiveRecord::Base end
我该如何纠正这种行为?
模型属性是从数据库列推断出来的,因此您不需要在模型类中指定它们。
在Rails 3.2中你有(如果我没记错的话)
# attr_accessible :description, :test, :oaso
线生成。 但受保护的属性在Rails 4.0中已弃用,并被强参数机制取代。
你所做的一切都是错的。 但是你正在检查错误的文件。 查找CreateAsdsdsMigration(在迁移目录中),您将看到自动生成的字段
对于那些来自Grails或Django的人,请注意Rails创建数据库FIRST–而不是相反,domainclass.groovy或models.py在您定义它们之后为您创建数据库表。 查找yourapp / db / schema.rb,里面是你的所有类及其字段定义。