簡體   English   中英

如何將表單中的文本字段中的輸入保存在Rails中的ruby中

[英]how to save input from text field with form in ruby on rails

我需要保存從用戶那里得到的輸入,但是我發現了一個可以使用舊格式的代碼,

文件:public \\ input.html,添加以下代碼:

<html>
  <head>
    <title>Using Text Fields</title>
  </head>
  <body>
    <h1>Working With Text Fields</h1>
    This Ruby on Rails application lets you read data from text fields.
    <br>
    <form action = "/hello/there" >
      Please enter your name.
      <br>
      <input type="text" name="text1">
      <br>
      <br>
      <input type="submit"/>
    </form>
  </body>
</html>

文件:app \\ controllers \\ hello_controller.rb:

class HelloController < ApplicationController
  def there
    @data = params[:text1]
  end
end

文件:app \\ views \\ hello \\ there.rhtml:

<html>
  <head>
    <title>Reading data from text fields</title>
  </head>
  <body>
    <h1>Reading data from text fields</h1>
    This Ruby on Rails application reads data from text fields.
    <br>
    <br>
    Your name is <%= @data %>.
    <br>
    <br>
  </body>
</html>

Start the WEBrick server: ruby script/server
Navigate to http://localhost:3000/input.html

那就是代碼片段,說實話,它的工作原理就像一個咒語,但是在當前的rails api中,它給了我這樣的東西:

<!--
<form action = "home/omg" >

  <%= label_tag(:text1, "Enter the message:") %>
  <%= text_field_tag :text1 %>
  <%= submit_tag"submit" %>
-->

那么有什么區別,我如何使用給定的輸入,

我想要和需要的是用戶單擊按鈕-提交按鈕-在文本字段中獲取文本並將其用作我的家庭控制器中的字符串。 我怎樣才能做到這一點?

唯一的區別是,您在Rails指南中找到的代碼使用Rails表單幫助程序 表單幫助程序將在服務器上進行評估,結果將幾乎與第一個示例中的結果完全相同地發送到客戶端。 嘗試使用表單助手,然后在瀏覽器中導航到您的應用程序。 右鍵單擊“檢查元素”,您將看到標准標記,類似於您編寫的標記。

至於使用給定的輸入,當前是否無法正常工作? 我尚未測試您的代碼,但看起來應該可以。 如果字符串沒有出現在there.rhtml ,可以解釋發生了什么嗎?

像建議的答案一樣,查看Rails指南以了解Rails form helper form_tag工作方式。

在您的app/views/hello/edit.erb.html或您擁有表單的位置(由於這些是靜態資源,因此無法在public/*.html )。 ERB (輸出HTML的嵌入式RuBy文件)中使用form_tag ,例如:

<%= form_tag("/hello/there") do %>
  <%= label_tag(:text1, "Please enter your name") %>
  <%= text_field_tag :text1 %>
  <%= submit_tag %>
<% end %>

將輸出HTML:

<form action="/hello/there">
  <label for="text1">Please enter your name</label>
  <input type="text" name="text1" id="text1" />
  <input type="submit" />
</form>

暫無
暫無

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

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