ruby-on-rails – 在Ruby on Rails中,如果我们生成一个模型“Ani
发布时间:2020-12-16 23:15:49 所属栏目:百科 来源:网络整理
导读:比如说,如果我们生成了一个模型 rails generate model animal name:string birthday:date 现在我们想要创建其他模型来继承它(比如Dog和Cat),我们应该再次使用rails generate model还是自己添加文件?如果我们使用rails生成模型,我们如何指定Dog应该继承Anima
比如说,如果我们生成了一个模型
rails generate model animal name:string birthday:date 现在我们想要创建其他模型来继承它(比如Dog和Cat),我们应该再次使用rails generate model还是自己添加文件?如果我们使用rails生成模型,我们如何指定Dog应该继承Animal? 我想如果我们使用rails generate模型而不是自己添加模型文件,那么也会为我们创建单元测试文件和fixture文件.还添加了迁移文件,除非它使用MongoDB,否则将不会有迁移文件. 解决方法
如果您计划的Dog,Cat和其他子类不会偏离Animal模型,那么您可以在这里进行
STI (Single Table Inheritance)模式.
为此,请向Animal添加一个String列.然后你可以: class Dog < Animal end class Cat < Animal end >> scooby = Dog.create(:name => 'Scooby',:date => scoobys_birthdate) => #<Dog id: 42,date: "YYYY-MM-DD",type: "Dog"> 生成模型狗 $script/generate model Dog --skip-migration 然后改变(通常是app / models / dog.rb): class Dog < ActiveRecord::Base 至 class Dog < Animal (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |