首页 > 解决方案 > Rails 和 html 表单(在这种情况下具体化)

问题描述

我正在为我的产品模型创建一个表。作为标题,我将拥有属性名称,在正文中,行将代表我要为其添加值然后保存的记录。目前,我将其草绘为 HTML/CSS(使用 Materialize)

    <table>
  <thead>
    <tr>
      <th>#</th>
      <th>Date</th>
      <th>Document</th>
      <th>Description</th>
    </tr>
  </thead>
    <tbody>
      <tr>
        <td>1</td>
        <td>12/12/2017</td>
        <div>
        <td>
          <select class = "browser-default">
          <option value="" disabled selected>Choose your option</option>
          <option value ="1">Option 1</option>
          <option value ="2">Option 2</option>
          </select>
        </td>
          <td class ="input-field col s6" >
          <input id="last_name" type="text" class="validate">

</table>

如果我想保留提供的选项、输入、复选框,我该如何保存我的记录(我想仍然使用输入字段,例如,我放在那里的值要保存)我怎样才能使它适应 Rails形式?

标签: ruby-on-railsrubyformsmaterial-designmaterialize

解决方案


html.erb你会在一个文件中想要这样的东西:

    ...
    <tbody>
      <% @products.each do |product| %>
        <tr>
          <td><%= product.id %></td>
          <td><%= product.your_date_column %></td>
          <%= form_for product do |f| %>
            <td>

              <%= f.select :browser_default, [["Option 1", 1], ["Option 2, 2"]], include_blank: "Choose your option" %>
            </td>
            <td class ="input-field col s6" >
              <%= f.input :last_name %>
            </td>
          <% end %>
          ...

需要注意的几点:

  • 您需要设置@products相关的控制器操作。
  • 然后迭代这些,为每个产品创建一行。
  • 您将需要此表单的提交按钮,或者确定如何使用 AJAX 提交。前者更简单,只需要<%= f.submit %>添加到行中。

希望对您有所帮助-让我知道您的进展情况或有任何疑问:)


推荐阅读