我正在尝试从名为' showings'的表格中返回搜索内容。这个字段名为' show_date'具有重复的日期条目和名为' film_id'的字段。 (属于主键' id'在名为'电影'的表格中。)
我想搜索任何具有特定演出日期的电影(例如今天),以便每部电影只返回一张唱片(因为每张电影在放映表中有多个相同的日期显示)。
我的搜索视图如下:
<!-- app\views\_search.html.erb -->
<%= form_tag my_path do %>
<% date = Date.today %>
<%= hidden_field_tag :search_string, date.strftime("%F") %>
<div class="tab-content">
<%= submit_tag "What's on", class: "btn" %>
</div>
<% end %>
我的控制器如下:
def search
@films = Film.date_search(params[:search_string])
else if @films.empty?
flash.now[:alert] = "There are no films showing with that date - Showing all films."
@films = Film.all.order :title
end
render :action => "index"
end
我的电影模特看起来像:
def self.date_search(search_string)
film = Showing.where("show_date = ?", search_string).pluck(:film_id)
end
我认为我的主要问题在于上面的电影模型代码,因为我不确定如何在每条记录只有一个show_date的情况下重新制作多个独特的电影记录。任何帮助将不胜感激。