database - 轨道 3 : Update database and scaffold

标签 database ruby-on-rails-3 scaffolding

我开始进入 Ruby on Rails 的庞大世界,并尝试了解脚手架和模型。 (提示,我是一名设计师)

我使用rails生成脚手架命令

rails generate scaffold Lesson title:string description:text

但是是否可以使用新的键、值和 Rails 来更新类(class)表?

我尝试过:

rails generate model Lesson title:string description:text dtstart:datetime

但是当我运行 db:migrate 时它失败了,我知道的唯一方法是删除所有脚手架并重新生成它。

我确信一定有一个更简单的解决方案:)

我认为(但我不确定,这是因为 db/development.sqlite3 文件未更新,当我手动删除内容然后运行 ​​bd:migrate 时)有没有办法让一切都发生立即更新?

最佳答案

我认为没有办法完成您所描述的操作 - 通常,如果您想向模型添加新字段,您需要生成迁移:

rails g migration AddStartToLesson

然后打开迁移文件并添加将添加这些字段的代码。它最终可能看起来像这样:

class AddStartToLesson < ActiveRecord::Migration
  def self.up
    add_column :lessons, :start, :datetime
  end

  def self.down
    remove_column :lessons, :start
  end
end

并且您必须更新一些 View - 可能是 _form.html.erb,以使表单字段输入该数据,并更新 index.html.erb 和 show.html.erb 来显示它。 (它们可能位于 app/views/lessons/中)

关于database - 轨道 3 : Update database and scaffold,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7827465/

相关文章:

MySQL、PHP Laravel

c# - 如何最大化性能?

javascript - rails : Restricting pure javascript in the asset pipeline to specific views

grails - Grails中的Web服务脚手架

ruby-on-rails - Ruby on Rails Scaffold,其中数字作为数据库头

C# 程序使用我的 Windows AD 身份验证连接到我的数据库,而不是我编码到其中的连接字符串。为什么?

ruby-on-rails-3 - 在Rails的显示页面中用用户名替换user_id

ruby-on-rails-3 - 在Rails版本之间迁移后,ActiveRecord关联会在分配时自动保存,如何禁用它?

java - 如何将 Yeoman 脚手架与现有的 Java 目录结构相结合

database - 用于处理标记标签的 NoSQL 结构