与对象无关的表单
form_tag
form_tag基本形态
#基本形态
<%= form_tag do %>
Form contents
<% end %>
#生成的html样式,生成的两个hidden类型的属性
<form action="/" accept-charset="UTF-8" method="post">
<input name="utf8" type="hidden" value="✓" />
<input type="hidden" name="authenticity_token" value="MCllQOJYEuvoiBOM4uBnQKYpTAokXKJexm+oGghlQ7IS4G98lu32DobEdx5MuJ2ZcmHUKxIEngUxv3PKVlPigw==" />
Form contents
</form>
form_tag示例
#form_tag示例
rails g scaffold tag name
#routes.rb
Rails.application.routes.draw do
get '/tags/search', to: "tags#search"
resources :tags do
get 'search', on: :collection
end
end
#models/tag.rb
class Tag < ApplicationRecord
def self.search(arg)
arg.strip!
where(["name like ?", "%#{arg}%"])
end
end
#controllers/tags_controller.rb
TagsController < ApplicationController
def search
@tags = Tag.search(params[:search])
render 'index'
end
end
#views/tags/index.html.erb
<%= form_tag "/tags/search", method: :get do %>
<%= label_tag "tag" %>
<%= text_field_tag :search %>
<%= submit_tag "搜索" %>
<% end %>