[v] [Rails] gem "simple_form"

https://github.com/plataformatec/simple_form

Gemfile
gem 'simple_form'

$ bundle install

不整合 bootstrap:
$ rails generate simple_form:install

整合 bootstrap:
$ rails generate simple_form:install --bootstrap

記得 application 中要先有 bootstrap assets

上面三步驟安裝好 simple_form 後,原本很繁瑣的 rails form 寫法,就可以簡化成像下面的寫法。

<%= simple_form_for @user do |f| %>
  <%= f.input :username %>
  <%= f.input :password %>
  <%= f.button :submit %>
<% end %>

要注意兩點:

  1. :username, :password 等早在新建 model 時就定義屬性了,所以不用像 rails form 那樣再定義一次。
  2. 顯示在前端的欄位名稱就直接是 Username, Password, 這對英文網站方便,對其它語言的網站開發則未必,如果改欄位名稱,必須額外設定。