表單
<%= form_for :article do |f| %>
<%= f.label :title %>
<%= f.text_field :title %>
<%= f.label :text %>
<%= f.text_area :text %>
<%= f.submit %>
<% end %>
呼叫form_for
方法時,要指定乙個物件。在上面的表單中,指定的是:article
。這個物件告訴form_for
,這個表單是用來處理哪個資源的。在form_for
方法的塊中,formbuilder
物件(用f
表示)建立了兩個標籤和兩個文字字段,乙個用於文章標題,乙個用於文章內容。最後,在f
物件上呼叫submit
方法,建立乙個提交按鈕。
不過這個表單還有個問題。如果檢視這個頁面的原始碼,會發現表單action
屬性的值是/articles/new
。這就是問題所在,因為其指向的位址就是現在這個頁面,而這個頁面是用來顯示新建文章表單的。
要想轉到其他位址,就要使用其他的位址。這個問題可使用form_for
方法的:url
選項解決。在 rails 中,用來處理新建資源表單提交資料的動作是create
,所以表單應該轉向這個動作。
<%= form_for :article, url: articles_path do |f| %>
這裡,我們把:url
選項的值設為articles_path
幫助方法。要想知道這個方法有什麼作用,我們要回過頭再看一下rake routes
的輸出:
$ bin/rake routes
prefix verb uri pattern controller#action
articles get /articles(.:format) articles#index
post /articles(.:format) articles#create
new_article get /articles/new(.:format) articles#new
edit_article get /articles/:id/edit(.:format) articles#edit
article get /articles/:id(.:format) articles#show
patch /articles/:id(.:format) articles#update
put /articles/:id(.:format) articles#update
delete /articles/:id(.:format) articles#destroy
root get / welcome#index
rticles_path
幫助方法告訴 rails,對應的位址是/articels
,預設情況下,這個表單會向這個路由發起post
請求。這個路由對應於articlescontroller
控制器的create
動作。
Ruby學習記錄 安裝Ruby
一直想學習一下ruby,要問原因呢.聽說學ruby的妹子很多.於是興致勃勃的去買了一門 研究一下.在這裡需要說一下,我這邊系統是ubuntu 14.04,以下安裝操作僅供參考 這裡可以有三種方式 1.源 編譯 2.二進位制軟體包 3.ruby軟體包管理工具 在這裡我選擇第一種,通過編譯原始碼的方式 ...
Ruby常用方法
count 判斷內容l的個數integer型 full name.count l full name full include?判斷內容是否有l,boolean型 full name.include?l full name full equal?equal?方法用來判斷2個物件是否是同乙個物件 a....
ruby常用命令
1.建立blog專案 2.修改config database.yml 3.修改gemfile 4.bundle install 5.rake db create 建立資料庫 6.rake db migrate 建立表 rails g migration add status to post 新增一列...