2016-05-10 3 views
-1

Я пытаюсь выполнить какой-то конкретный запрос при нажатии кнопки в Ruby on Rails. Я создал таблицы истории. Вначале он отображает все данные. Вот моя страница hamlRuby on Rails, выполняющий запрос базы данных

%h1 History 

%br 
%br 

%table#views 
    %tbody 
    %tr 
     %td 
     %td 
     %input{:required => "", :type => "text"} 
     %td 
     %input{:required => "", :type => "submit", :value => "Search"} 


%table#houses 
    %thead 
    %tr 
     %th UserName 
     %th User ID 
     %th Email 
     %th Rented House 
     %th Start Date 
     %th End Date 
     %th Total Cost ($) 
     %th Rating 
    %tbody 
    - @histories.each do |history| 
     %tr 
     %td= history.user_name 
     %td= history.user_id 
     %td= history.email 
     %td= history.house_address 
     %td= history.start_date 
     %td= history.end_date 
     %td= history.total_cost 
     %td= history.rating 

= link_to 'Back to Welcome page', users_path 

Теперь есть текстовое поле. Я хочу сделать это таким образом, что при нажатии на поиск он выполнит запрос и покажет данные, чье имя пользователя введено в поле.

Может ли кто-нибудь помочь мне в этом?

Спасибо и наилучшими пожеланиями

+0

Я полагаю, e вы собираетесь искать на своей странице приветствия? – Kumar

+0

У меня есть страница истории, где я хочу найти ее – Akshay

ответ

0

вы можете сделать простой поиск, чтобы вернуть эти данные. что-то вроде этого

(модель) history.rb

def self.search(search) 
    where("title LIKE ?", "%#{search}%") 
end 

* это С помощью SQLite

(контроллер) history_controller.rb

def index 
    @histories = Histories.all 
    if params[:search] 
     @histories = Histories.search(params[:search]).order("created_at DESC") 
    else 
     @histories = Histories.all.order('created_at DESC') 
    end 
    end 

(Haml/вид)

= form_tag(history_path, :method => "get", id: "search-form") do 
    = text_field_tag :search, params[:search], placeholder: "Search Username", :class => "form-control" 
+0

Показывает текстовое поле и в нем написано Имя пользователя, но ничего не происходит ... как будто я хочу показать записи, чье имя пользователя будет соответствовать в текстовом поле. – Akshay

+0

http://railscasts.com/episodes/37-simple-search-form?autoplay=true –

+0

Возможно, это видео поможет вам больше? –

Смежные вопросы