簡體   English   中英

Rails中沒有數據庫的簡單形式

[英]Simple form in Rails Without Database

我剛剛開始嘗試熟悉Rails,但我對Ruby的了解並不多。 目前,我正在做一個初學者項目,以熟悉該框架,該框架涉及一個簡單的表單,該表單包含名稱,電子郵件和電話號碼,並且當您單擊“提交”按鈕時,頁面應該刷新並顯示您提交的信息(因此沒有數據庫交互,該模型應該做的很少。 這很簡單,但是由於我目前對Ruby的了解很少,所以我有些困惑。 我已經寫了大部分視圖,但是我仍然對控制器和模型中的內容感到困惑。 如果有人可以提供任何提示,那就太好了!

模型(至少是從ActiveRecord :: Base繼承的模型)需要數據庫,因此,即使您使用的是模型,也要使用數據庫,即使它是像SQLite這樣的簡單模型。

如果您不想進入模型並生成遷移來為模型創建表,那么您可能只是要將表單值存儲到實例變量中並在視圖中引用它們。 下面是一個快速的示例,說明了如何執行此操作。

如果您有一個將數據(例如: nameemailemailcreate動作的表單,則create動作看起來像這樣:

def create
  @name = params[:name]
  @email = params[:email]
  render :my_template
end

上面的create動作是將發送給它的參數分配給實例變量,然后您可以在視圖中引用這些實例變量。 在上面的示例中, create操作將嘗試渲染一個名為my_template的視圖,該視圖可能名為my_template.html.erb ,看起來可能像這樣:

<p>Your name is <%= @name => and your email is <%= @email =>.</p>

這是一個非常小巧的示例,但希望能有所幫助。

當您繼續使用模型時,您的創建操作可能會創建一個模型的新實例,將用戶發送的參數傳遞給該模型,保存模型,然后將它們重定向到顯示數據的頁面。

您需要無表模型。 請參考Ryan關於此主題的出色網絡廣播。

http://railscasts.com/episodes/193-tableless-model

使用數據庫要容易得多。

rails new stack
cd stack
rm public/index.html
rails generate scaffold Member name:string email:string phone:string
rake db:migrate
rails server

然后瀏覽到localhost:3000 / members

(假設您正在使用滑軌3)

暫無
暫無

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

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