Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 数据未存储在表rails中_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 数据未存储在表rails中

Ruby on rails 数据未存储在表rails中,ruby-on-rails,ruby,Ruby On Rails,Ruby,我已经生成了一个迁移,使用rails generate migration add_status_to_fundings在fundings表中添加状态字段。迁移文件被创建,我在其中添加了 添加列:基金,:状态,:字符串 然后rails db:迁移 模式中的状态被添加到资金表中。但是,无论我在status中输入什么数据,它都不会存储在funding表中。数据都不会显示在show.html.erb文件中。请帮忙 _form.html.erb <div class = "form-group"&

我已经生成了一个迁移,使用rails generate migration add_status_to_fundings在fundings表中添加状态字段。迁移文件被创建,我在其中添加了 添加列:基金,:状态,:字符串 然后rails db:迁移 模式中的状态被添加到资金表中。但是,无论我在status中输入什么数据,它都不会存储在funding表中。数据都不会显示在show.html.erb文件中。请帮忙

_form.html.erb

<div class = "form-group">
        <div class="control-label col-sm-2">
          <%= form.label :status %>
        </div>
        <div class="col-sm-8">
          <%= form.text_field :status %>
        </div>
      </div> 
      <div class="form-group">
        <div class="col-sm-10">
          <%= form.submit "Apply", class: 'btn btn-primary btn-lg' %>
</div>
</div>
show.html.erb

<p><strong>Status: </strong><%= @funding.status %></p><br>
迁移文件

class AddStatusToFundings < ActiveRecord::Migration[5.2]
  def change
    add_column :fundings, :status, :string
  end
end
轨道控制台

<Funding id: 1, describe_activity: "10 players in each team", type_of_activity: "Cricket", season: "Fall", activity_details: "best outdoor games ", name_of_organisation: "BCCI", activity_start_date: "2018-12-12", number_of_weeks: "6", days_per_week: "6", hours_per_day: "6", program_registration_cost: 100, family_contribution: "10", other_funds: 20, other_fund_provider: "Arni", amount_requested: 70, created_at: "2018-05-23 17:56:03", updated_at: "2018-05-23 17:56:03", child_id: 1, status: nil>

看来你的问题不在于桌子本身。您只是忘记了将:status添加到允许的参数中

也许你的控制器里有这样的东西

private
  def funding_params
    params.require(:funding).permit(:describe_activity, :type_of_activity..., :status)
  end

只需添加:status to be allowed

您是否在控制器中的允许参数中包含:status?对于status字段,我想将其设置为下拉列表,并希望用户将其设置为pending,只有管理员可以将其更改为approved或densed。