Ruby on rails 轨道。获取参数以将字符串保存到数据库

Ruby on rails 轨道。获取参数以将字符串保存到数据库,ruby-on-rails,ruby,database,string,params,Ruby On Rails,Ruby,Database,String,Params,我是rails新手,想知道如何让params将字符串保存到DB。 到目前为止,唯一保存的参数是最后一个参数,该参数为“int”类型 下面的代码,我提前感谢您的任何意见 控制器 def new #params['titel'] mypage=Task.new mypage.name=params['titel'] mypage.completion=params['done'] mypage.priority=params['priority']

我是rails新手,想知道如何让params将字符串保存到DB。 到目前为止,唯一保存的参数是最后一个参数,该参数为“int”类型

下面的代码,我提前感谢您的任何意见

控制器

def new
    #params['titel']
    mypage=Task.new 
    mypage.name=params['titel'] 
    mypage.completion=params['done']
    mypage.priority=params['priority']
    mypage.save

    redirect_to action: "tasks"

  end
数据库

class CreateTasks < ActiveRecord::Migration
  def change
    create_table :tasks do |t|

      t.timestamps null: false
    end

    add_column :tasks, :name, :string
    add_column :tasks, :completion, :string
    add_column :tasks, :priority, :int

  end
end
class CreateTasks
查看

<form action="/asterix" method="post">
    Name <input name="name">
    <br>
    Completion <input name="completion">
    <br>
    Priority <input name="priority">
    <br>
    <button type="submit"></button>
</form>

名称

完成
优先

常见错误立即解决 更正您的代码

def new
#params['titel']
mypage=Task.new 
mypage.name=params['titel'] 
mypage.completion=params['done']
mypage.priority=params['priority']
mypage.save
redirect_to action: "tasks"
end

def new
#params['titel']
mypage=Task.new 
mypage.name=params[:name] 
mypage.completion=params[:completion]
mypage.priority=params[:priority]
mypage.save
redirect_to action: "tasks"
end

出现错误的原因是您使用了不同的参数名称,而不是表单中使用的名称。

我认为您可能需要查看有关Rails的基本教程。尝试:同意你最好阅读一些基本指南。这些是官方的Rails指南,我强烈建议大家通读它们——这样你会很快提升你的Rails知识:)谢谢大家,我很感谢这些链接!谢谢你的回答,这就是问题所在!