Rails 검색 기능 구현
입문
이번에는 검색 양식을 구현했습니다.
이번에 검색 기사의 제목을 설치하면 지정된 키워드로 기사를 검색할 수 있다
실시
routes
이번에는 "collection"을 사용합니다.
데이터를 확인하려면 "member"를 사용하십시오.
"member"를 사용하여 루트를 "id"로 추가합니다.
이렇게 기술했습니다.↓
또한 이 동작을 이동할 때 파라미터에서':id'를 수신하려면 member 를 사용하십시오
collection을 사용하여 작업을 추가합니다. 특히 특정 페이지에 id를 지정할 필요가 없습니다.
Rails에 대해 알아봤습니다: routes.rbcollection과 member를 깊이 있게 이해하다
그리고 다른 참고는 여기입니다.
Rails 학습 라우팅 ②
rails Guide
config/routes.rb
resources :albums do
collection do
get 'search'
end
end
controller
컨트롤러는 "search"방법을 사용합니다. "(params[:keyword])"라고 설명합니다.
허용: keyword.
controllers/albums_controller.rb
def search
@albums = Album.search(params[:keyword])
end
models
여기에는 검색 내용이 지정되어 있습니다.
Where 방법과 LIKE는 이전에 배운 적이 있다.자세한 내용
LIKE 사용
LIKE를 사용해도 특별한 기호를 사용할 수 있습니다.
백분율 - 임의의 문자열(빈 문자열 포함)(하나의 문자보다 크거나 같음)
「 _ 」밑줄 기호 - 모든 문자
[MySQL] 데이터 검색 수행
더 이해하기 쉬운 건 여기예요.
pikawaka: [Rails] where 방법으로 원하는 데이터를 얻으세요!
models/album.rb
def self.search(search)
if search !="" # 空じゃなければ検索します。
Album.where('title LIKE(?)', "%#{search}%")
else
Album.all
end
end
views
"form_with"를 사용하여 검색 섹션을 만듭니다.
text_field 섹션 설명: keyword.
라우팅을 시작할 때 이렇게 설정합니다.
controller 부분에서 말한 바와 같이 보내면
':keyword'(검색하고 싶은 단어)params에 들어가기
where 방법으로 검색하기
URL 섹션의 "search_albums_path"로 전송됩니다.
views/pics/index.html.erb
<%= form_with(url: search_albums_path, local: true, method: :get, class: "search-form") do |f| %>
<div class="search-inside">
<%= f.text_field :keyword, placeholder: "記事を検索する", class: "search-box" %>
</div>
<div class="search-inside">
<%= f.submit "検索", class: "search-btn btn" %>
</div>
<% end %>
검색 부분은 이런 느낌입니다.
CSS 섹션은 생략했지만 취향에 맞게 꾸몄습니다.
표시된 부분은 이렇게 기술되어 있다.
views/albums/search.html.erb
<% @albums.each do |album| %>
<li class="list">
<%= link_to album_path(album) do %>
<div class="pic-img-content">
<%= image_tag album.image, class: "pic-img" if album.image.attached? %>
</div>
<div class="pic-info">
<div class="pic-title">
<p><%= album.created_at %></p>
<h3><%= album.title %></h3>
</div>
<div class="pic-text">
<div class="text-box">
<p><%= album.text %></p>
<div>
</div>
</div>
<% end %>
</li>
<% end %>
준비한 것이 드러났다
총결산
시간이 좀 걸렸지만 순조롭게 설치되었습니다.
다음에 나는 좀 일찍 다른 것을 만들고 싶다
Reference
이 문제에 관하여(Rails 검색 기능 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sumiiii/items/55b55f1fcd8a4431a520
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
routes
이번에는 "collection"을 사용합니다.
데이터를 확인하려면 "member"를 사용하십시오.
"member"를 사용하여 루트를 "id"로 추가합니다.
이렇게 기술했습니다.↓
또한 이 동작을 이동할 때 파라미터에서':id'를 수신하려면 member 를 사용하십시오
collection을 사용하여 작업을 추가합니다. 특히 특정 페이지에 id를 지정할 필요가 없습니다.
Rails에 대해 알아봤습니다: routes.rbcollection과 member를 깊이 있게 이해하다
그리고 다른 참고는 여기입니다.
Rails 학습 라우팅 ②
rails Guide
config/routes.rb
resources :albums do
collection do
get 'search'
end
end
controller
컨트롤러는 "search"방법을 사용합니다. "(params[:keyword])"라고 설명합니다.
허용: keyword.
controllers/albums_controller.rb
def search
@albums = Album.search(params[:keyword])
end
models
여기에는 검색 내용이 지정되어 있습니다.
Where 방법과 LIKE는 이전에 배운 적이 있다.자세한 내용
LIKE 사용
LIKE를 사용해도 특별한 기호를 사용할 수 있습니다.
백분율 - 임의의 문자열(빈 문자열 포함)(하나의 문자보다 크거나 같음)
「 _ 」밑줄 기호 - 모든 문자
[MySQL] 데이터 검색 수행
더 이해하기 쉬운 건 여기예요.
pikawaka: [Rails] where 방법으로 원하는 데이터를 얻으세요!
models/album.rb
def self.search(search)
if search !="" # 空じゃなければ検索します。
Album.where('title LIKE(?)', "%#{search}%")
else
Album.all
end
end
views
"form_with"를 사용하여 검색 섹션을 만듭니다.
text_field 섹션 설명: keyword.
라우팅을 시작할 때 이렇게 설정합니다.
controller 부분에서 말한 바와 같이 보내면
':keyword'(검색하고 싶은 단어)params에 들어가기
where 방법으로 검색하기
URL 섹션의 "search_albums_path"로 전송됩니다.
views/pics/index.html.erb
<%= form_with(url: search_albums_path, local: true, method: :get, class: "search-form") do |f| %>
<div class="search-inside">
<%= f.text_field :keyword, placeholder: "記事を検索する", class: "search-box" %>
</div>
<div class="search-inside">
<%= f.submit "検索", class: "search-btn btn" %>
</div>
<% end %>
검색 부분은 이런 느낌입니다.CSS 섹션은 생략했지만 취향에 맞게 꾸몄습니다.
표시된 부분은 이렇게 기술되어 있다.
views/albums/search.html.erb
<% @albums.each do |album| %>
<li class="list">
<%= link_to album_path(album) do %>
<div class="pic-img-content">
<%= image_tag album.image, class: "pic-img" if album.image.attached? %>
</div>
<div class="pic-info">
<div class="pic-title">
<p><%= album.created_at %></p>
<h3><%= album.title %></h3>
</div>
<div class="pic-text">
<div class="text-box">
<p><%= album.text %></p>
<div>
</div>
</div>
<% end %>
</li>
<% end %>
준비한 것이 드러났다 총결산
시간이 좀 걸렸지만 순조롭게 설치되었습니다.
다음에 나는 좀 일찍 다른 것을 만들고 싶다
Reference
이 문제에 관하여(Rails 검색 기능 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sumiiii/items/55b55f1fcd8a4431a520
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Rails 검색 기능 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sumiiii/items/55b55f1fcd8a4431a520텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)