簡體   English   中英

Rails腳手架站點,無法添加列

[英]Rails Scaffolded Site, unable to add Column

因此,我嘗試了幾次將單列數據添加到我的表中,並取得了一定的成功。 我能夠添加列並將屬性名稱拖入顯示,編輯,索引和表單中。 但是,每當我嘗試添加有關該屬性的信息或更新現有數據行以包括該屬性時,該屬性(每行)都保持為空。

我曾嘗試通過RemoveAttrFromModel刪除該列,甚至在每次我對db:migrate進行rake時都看到了schema.rb文件的添加和刪除感興趣的屬性,以為它可能與添加過程有關,但無濟於事。

我要說的是在我的應用程序>視圖>模型文件夾中,如果您創建一個新的腳手架模型,您將看到我在說什么,因為我很確定它會為您提供新的,顯示的,索引的,編輯的和_form文件。

我已經更新了新文件,顯示索引文件,編輯文件和表單文件,以獲取並顯示新屬性。

我可以執行以下操作:通過Rails控制台將數據添加到該屬性中。

這是我想做的:在實際網站上(將數據添加到該屬性值中,編輯數據,顯示該屬性中的數據)

編輯

這是我的_form.html.erb

        <%= form_for(@taster) do |f| %>
  <% if @taster.errors.any? %>
    <div id="error_explanation">
      <h2><%= pluralize(@taster.errors.count, "error") %> prohibited this taster from being saved:</h2>

      <ul>
      <% @taster.errors.full_messages.each do |msg| %>
        <li><%= msg %></li>
      <% end %>
      </ul>
    </div>
  <% end %>

  <div class="field">
    <%= f.label :name %><br>
    <%= f.text_field :name %>
  </div>
  <div class="field">
    <%= f.label :age %><br>
    <%= f.number_field :age %>
  </div>
  <div class="field">
    <%= f.label :city %><br>
    <%= f.text_field :city %>
  </div>
  <div class="field">
    <%= f.label :state %><br>
    <%= f.select :state, [
      ["Alabama", "AL"],
      ["Alaska", "AK"],
      ["Arizona", "AZ"],
      ["Arkansas", "AR"],
      ["California", "CA"],
      ["Colorado", "CO"],
      ["Connecticut", "CT"],
      ["Delaware", "DE"],
      ["District Of Columbia", "DC"],
      ["Florida", "FL"],
      ["Georgia", "GA"],
      ["Hawaii", "HI"],
      ["Idaho", "ID"],
      ["Illinois", "IL"],
      ["Indiana", "IN"],
      ["Iowa", "IA"],
      ["Kansas", "KS"],
      ["Kentucky", "KY"],
      ["Louisiana", "LA"],
      ["Maine", "ME"],
      ["Maryland", "MD"],
      ["Massachusetts", "MA"],
      ["Michigan", "MI"],
      ["Minnesota", "MN"],
      ["Mississippi", "MS"],
      ["Missouri", "MO"],
      ["Montana", "MT"],
      ["Nebraska", "NE"],
      ["Nevada", "NV"],
      ["New Hampshire", "NH"],
      ["New Jersey", "NJ"],
      ["New Mexico", "NM"],
      ["New York", "NY"],
      ["North Carolina", "NC"],
      ["North Dakota", "ND"],
      ["Ohio", "OH"],
      ["Oklahoma", "OK"],
      ["Oregon", "OR"],
      ["Pennsylvania", "PA"],
      ["Rhode Island", "RI"],
      ["South Carolina", "SC"],
      ["South Dakota", "SD"],
      ["Tennessee", "TN"],
      ["Texas", "TX"],
      ["Utah", "UT"],
      ["Vermont", "VT"],
      ["Virginia", "VA"],
      ["Washington", "WA"],
      ["West Virginia", "WV"],
      ["Wisconsin", "WI"],
      ["Wyoming", "WY"]
    ] %>
  </div>
  <div class="field">
    <%= f.label :title %><br>
    <%= f.text_field :title %>
  </div>
  <div class="field">
    <%= f.label :headline %><br>
    <%= f.text_field :headline %>
  </div>
  <div class="field">
    <%= f.label :description %><br>
    <%= f.text_area :description %>
  </div>
  <div class="field">
    <%= f.label :employmentStatus %><br>
    <%= f.select :employmentStatus, [
      ["Employed Full Time", "employedFullTime"],
      ["Employed Part Time", "employedPartTime"],
      ["Freelancing", "freelancing"],
      ["Not Employed but Looking", "notEmployedbutLooking"],
      ["Not Employed", "notEmployed"]
    ] %>
  </div>
  <br/>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

如果使用了生成腳手架,則必須修復控制器上的強參數...完成操作后,在“專用”下,您將看到類似以下內容:

tasters_controller.rb您對問題的編輯后,我認為您的模型是品嘗者,因此此代碼應轉到tasters_controller.rb

def taster_params
    params.require(:taster).permit(:name, :age, :city, :state, :headline,
                            :description, :employmentStatus, :title)
end

您應將新字段添加到此定義的允許部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM