轨道视图不显示部分 - "response has no matching <turbo-frame id="事件"> element"



我有一个带搜索的索引页,除了没有结果的时候,也就是我得到错误的时候,它基本上是有效的:-

response has no matching <turbo-frame id="events"> element

当有搜索结果时,我不会得到这个。当结果为空时,是否需要指定要在索引操作中呈现的分部?在我看来,为什么没有对此进行评估?

index.html.erb

<div id="events-wrapper">
<% if @events.any? %>
<%= render "events", events: @events %>
<% else %>
<%= render "no_events" %>
<% end %>
</div>

_events.html.erb

<%= turbo_frame_tag "events" do %>
<%= render collection: @events, partial: 'event' %>
<%= raw pagy_bootstrap_nav(@pagy) %>
<% end %>

_no_events.html.erb

<div class="no-events-notice alert alert-primary">
No events found
</div>

events_controller.rb索引操作

def index
@pagy, @events = pagy(find_events(filter_params))
end

基本上,我的搜索工作正常,但当没有结果时——除非刷新页面,否则我的no_events部分不会被呈现。我错过了什么?

我已经从等式中删除了分部,只是用一个简单的div替换了那一行,但它仍然没有显示。

解决方案是将结果封装在一个id为"的turbo帧中;事件";就像这样:-

<turbo-frame id="events">
<% if @events.any? %>
<%= render "events", events: @events %>
<% else %>
<%= render "no_events" %>
<% end %>
</turbo-frame>

相关内容

最新更新