0

嘿,我是 turbo_streams 的新手,我一直想知道为什么会出现这个错误。

部分属性:

<div id="properties"
     data-action="map-marker-clicked@window->@mapmarker#mapMarkerClicked"
     data-controller="mapmarker"
     data-mapmarker-target="properties_list">
  <%= "#{@properties.length} properties" %>

  <%= turbo_stream_from "properties" %>
  <%= turbo_frame_tag "properties" do %>
    <% @properties.each do |property| %>
      <%= render property %>
      <p>
        <%= link_to "View this property", property %>
      </p>
    <% end %>
  <% end %>
</div>

我的控制器:

  def index
    @properties = location_search? ? Property::SearchByLocation.call(search_params[:value]) : Property.all

    @markers = Property::GenerateGoogleApiMapMarkers.call(property_or_properties: @properties)

    respond_to do |format|
      format.turbo_stream do
        render turbo_stream: turbo_stream.replace(@properties, partial: 'properties/properties')
      end
    end
  end

更多上下文:我计划从刺激控制器触发此重新加载(当用户单击谷歌地图上的标记时,我想用标记的坐标刷新属性部分作为组织属性的方式(最接近标记将显示在顶部)。

访问 http://localhost:3000/properties 时出现 ActionController::UnknownFormat 错误

在此处输入图像描述

4

2 回答 2

0

您收到此信息的原因是您发出的请求格式未指定正确的内容类型。他们在此处的手册中讨论它以指定正确的内容类型,这将取决于您如何从 JS ajax 或 fetch API 执行请求,如果您使用后者,我建议您查看request.js,因为它可以做到容易一点

于 2022-02-22T15:43:56.487 回答
0

您应该添加一个默认format.html操作

于 2022-02-28T18:32:30.803 回答