如何在轨道上的现有模型红宝石中添加变量

问题描述

|| 这里是非常绿色的问题。我按照http://guides.rubyonrails.org/getting_started.html上的说明构建了一个简单的博客。 如何将另一个字符串变量添加到post对象? 有了新变量后,如何在html.erb文件中创建新帖子?下面的代码为我的\'email \'方法提供了NoMethodError异常。如何使此代码运行无错误? btw-关于后续问题的stackoverflow约定是什么?
<h2>Add a post:</h2>
<%= form_for([@post,@post.actions.build]) do |f| %>
  <div class=\"field\">
    <%= f.label :number_performed %><br />
    <%= f.text_field :number %>
  </div>
  <div class=\"field\">
    <%= f.label :your_email %><br />
    <%= f.text_field :email %>
  </div>
  <div class=\"actions\">
    <%= f.submit %>
  </div>
<% end %>
    

解决方法

至少要获得最低限度的功能,必须在发布表中添加另一列。 请参阅此处,了解如何以编程方式添加列: http://api.rubyonrails.org/classes/ActiveRecord/Migration.html 或者,您可以像这样运行rails generate migration命令:
rails generate migration AddColumnNameToPost column_name:string
无论走哪条路,请确保运行以下命令以将那些迁移应用于数据库:
rake db:migrate
从那里您可以访问:
@post = Post.new
@post.column_name = \"value\"
#etc
    ,就像drharris的回答一样:
rails generate migration add_newvariableone_and_newvariabletwo_to_modelpluralname newvariableone:string newvariabletwo:string
它将在db / migrate内部创建ruby文件,其中内容类似于
class AddNewVariableOneAndNewVariableTwoToModelPluralname < ActiveRecord::Migration
  def self.up
    add_column :modelpluralname,:newvariableone,:string
    add_column :modelpluralname,:newvariabletwo,:string
  end

  def self.down
    remove_column :modelpluralname,:newvariableone
    remove_column :modelpluralname,:newvariableone
  end
end
希望这对您有所帮助     ,您应该查看关于迁移的部分。在您的情况下,您将使用类似以下的命令:
rails generate migration AddRandomStringToPost random_string:string
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...