ruby-on-rails - Rails:渲染不更新页面,但它正在响应中返回
问题描述
但是,当调用render
视图未更新时,我确实在网络选项卡中注意到,在对我的 POST 路由发出 POST 请求后,它返回 HTML 作为响应,并且响应具有我呈现的错误消息。它只是不更新页面。我不知道该怎么做。
在我的 POST 操作中,我强制调用它
flash.now[:notice] = responseMessage
render :deactivate_show
呈现动作:
def deactivate_show
@user = User.find(params[:id])
authorize! :deactivate_user, @user
if current_user.role == "admin"
if @user.broker?
@companyUsers = User.where(parent_id: @user.id)
@properties = Property.where(user_id: @user.id)
.or(Property.where(user_id: @companyUsers.ids))
elsif @user.broker_manager?
# get all agents in company
# exclude current user
# get broker
@companyUsers = User.where(parent_id: @user.parent_id)
.where.not(id: @user.id)
.or(User.where(id: @user.parent_id))
@properties = Property.where(user_id: @companyUsers.ids)
.or(Property.where(user_id: @user.parent_id))
else @user.agent?
@properties = @user.properties
if @user.parent_id?
@companyUsers = User.where(parent_id: @user.parent_id)
.where.not(id: @user.id)
.or(User.where(id: @user.parent_id) )
else
# dealing with owner.
@companyUsers = User.where('role IN (2,4,1)')
.where.not(id: @user.id)
end
end
else
end
end
它呈现了我拥有的显示表单的视图。
我添加到我的显示视图:
<div class="messages">
<% flash.each do |key, value| %>
<div class="hello"><%= value %></div>
<% end %>
</div>
注意“你好”的类。
当我发出 POST 请求时,网络选项卡中的响应有通知:
从 POST 请求响应中呈现:
<div class="messages">
<div class="hello">testing errors</div>
</div>
编辑:这是表格:
<div class="form-wrap">
<%= form_with do %>
<%= button_tag( id: 'button--submit', class: 'button button--secondary') do %>
<i class="icon-arrow-right"></i>
<span>Deactivate</span>
<% end %>
<% end %>
</div>
解决方案
好吧,因为我没有分享我的表格,所以没有人能提供实际的答案。我使用的是form_with
,默认情况下显然会执行 AJAX,因此不会渲染视图。
感谢这个问题的帮助:Rails render not shown in browser, 尽管服务器回复是肯定的
我变了
<%= form_with do %>
至
<%= form_with local: true do %>
现在它可以工作了。
推荐阅读
- ionic-framework - IONIC 4:如何从应用程序内的自定义脚本调用 iOs 文件资源
- php - Laravel,将相似的项目存储到数组中
- ruby-on-rails - 将 BigDecimal 小时添加到 DateTime 错误 1 秒
- html - 如何在html中播放全音量的视频
- github - 强制 GitHub 导入和跟踪空目录
- python - 在服务器之间混合的全局变量,python 不和谐
- r - 如何使用经验 copula 计算概率?
- rust - 为什么 svd2rust 生成的一些寄存器函数使用 unsafe 而其他的却没有?
- arrays - 我有一个 18*9 的矩阵,我想计算每行 6 行的平均值并得到一个 3*9 的结果矩阵
- python-3.x - Dask gridsearch给出错误KeyError:'finalize-c53697b4-1572-4d19-af41-c76b531699b9'