簡體   English   中英

從我的主頁向模型提交表單

[英]Submit a form to a model from my homepage

我有一個鏈接模型,該模型具有為其創建的所有通用支架,但是,我不想從link#new頁面上提交表單,而是從我的主頁提交一個填充新記錄的表單。

我只有一個文本字段,但是我不確定如何構造表單。 我讀過某個地方,您必須在form字段中指定控制器,但這似乎不起作用。

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

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

  <div class="field">
    <%= f.label :url %><br />
    <%= f.text_field :url %>
  </div>

  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

如果使用默認路由,則無需指定任何內容。

如果@link是數據庫中不存在的對象,Rails會自動認為這是#new的形式。 因此,表單操作將為/links ,方法為post ,這是#create的默認資源

就您而言,您無需執行任何操作,只需將表單代碼修改為:

<%= form_for(@link) do |f| %>
....

此外,您需要在家庭控制器中准備@link對象,例如

@link = Link.new

您所要做的就是向form_for幫助器添加一個url參數

<%= form_for :link, url: your_home_path do |f| %>

暫無
暫無

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

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