如何在 Rails 的页面中执行操作而不渲染新页面

2024-01-19

在我的 Rails 应用程序中,我尝试添加一个联系人用户弹出框,用于向用户发送电子邮件。

我有 javascript 来显示弹出表单,它本身就是一个部分。

当用户单击联系表单上的“提交”时,它会调用发送邮件的控制器操作。提交消息后,我想留在同一页面,但隐藏弹出框。我的问题是我无法获取传递邮件而不呈现其自己的视图的控制器操作。我试过

render nothing: true

但这只会呈现一个空白页面。

我的表格设置如下

= form_tag({:controller => 'users', :action => 'contact_user'}, :method => 'put') do 

在我的路线配置中我有

resources :users
  collection do
     put 'contact_user'
  end

如果您通过 AJAX 提交表单,则可以执行您想要执行的操作。

Adding :remote => true您的表单将完成此操作:

= form_tag({:controller => 'users', :action => 'contact_user'}, :method => 'put', :remote => true) do 

现在,表单提交将作为 AJAX 请求到达您的控制器。然后,您应该能够按照您的建议不渲染任何内容,或者甚至执行诸如渲染之类的操作.js.erb执行一些 Javascript(例如,隐藏您正在谈论的弹出窗口)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Rails 的页面中执行操作而不渲染新页面 的相关文章

  • 在 Rails 中呈现路由错误的 404 页面

    我试图在 Rails 中渲染集成的 404 页面作为例外 我尝试了这个 但仍然收到路由错误页面 posts controller rb def destroy if current user username post email post
  • db:schema:load 与 db:migrate 使用 capistrano

    我有一个 Rails 应用程序 我正在将其移动到另一台服务器 我认为我应该使用 db schema load 来创建 mysql 数据库 因为这是推荐的 我的问题是我正在使用 capistrano 进行部署 并且它似乎默认为 rake db
  • ror 中的多种布局

    昨天刚开始使用 Ruby on Rails 在我的 layouts application html erb 中 我有 div class conta div
  • 使用 Mechanize (Ruby) 进行基本身份验证和表单身份验证

    我正在尝试登录公司内部网上的一个站点 该站点具有基本身份验证弹出对话框和基于表单的身份验证 这是我正在使用的代码 导致 401 gt Net HTTPUnauthorized 错误 require rubygems require mech
  • 在 postgresql 中查找和汇总具有重叠记录的日期范围

    我有一个大型数据集 我想对记录具有重叠时间的计数进行求和 例如 给定数据 id 1 name A start 2018 12 10 00 00 00 end 2018 12 20 00 00 00 count 34 id 2 name B
  • Rails 4 - 每次运行 rake db:migrate 命令时,rake 命令都会显示弃用警告

    pinterestclone rake db migrate DEPRECATION WARNING Sprockets method register engine is deprecated Please register a mime
  • 黄瓜与 RSpec

    我想开始深入研究 BDD 我以前从未使用过 TDD 现在 不确定我是否应该从学习 RSpec 开始 然后跳到 Cucumber 或者直接使用 Cucumber 我一直在互联网上阅读有关两者的内容 在我看来 Cucumber 可能是 RSpe
  • Devise:允许用户注册为“UsErNaMe”但使用“用户名”登录

    与大多数网站的工作方式相同 我将 UsErNaMe 存储在数据库中 但让用户使用 用户名 登录 这是一个相当明显且必要的功能 很多人似乎都问过它 但我不断遇到的解决方案似乎与 Devise 自己的文档脱节 例如 考虑这篇博文 http an
  • Rails HABTM 设置、模型对象和 join_table 插入控制器设置

    我有以下设置 1 个产品有多个 Product types 许多 Product types 有 1 种类型 根据我对文档的理解 HABTM 关系 我的模型是 class Product lt ApplicationRecord has a
  • 如何检查字符串是否为有效日期

    我有一个字符串 31 02 2010 并想检查它是否是有效日期 最好的方法是什么 我需要一个方法 如果字符串是有效日期 则返回 true 如果不是 则返回 false require date begin Date parse 31 02
  • time_select 表单助手将新时间对象解释为 UTC,而不是配置的时区

    我遇到了对我来说似乎很简单的问题 但我无法弄清楚我做错了什么 在我的应用程序中 用户可以通过简单的 form for 添加他们的课程 他们可以输入课程讲座的开始时间和结束时间 如下所示 div class field Start Time
  • 如何使用sunspot_rails gem 搜索相关文章

    我有一个迷你博客应用程序 我希望用户查看与他们在文章显示页面中阅读的内容相关的文章 没有 sunspot rails gem 我会做这样的事情 在我的模型中 def self related search query join AND fi
  • Gem 在 irb 中可用,但在 Rails 控制台中不可用

    我正在尝试在我的 Rails 项目中使用 RedCloth gem 当我使用irb我可以加载宝石 require rubygems require RedCloth 它工作正常 但是当我在 Rails 控制台中尝试相同的操作时 我收到一条错
  • 查找 Rails 应用程序中未使用的代码

    如何查找正在运行和未运行的代码生产中 该应用程序经过充分测试 但还有很多测试unused代码 因此 他们在运行测试时得到覆盖 我想重构并清理这个烂摊子 它一直在浪费我的时间 我有很多后台工作 这就是为什么我希望生产环境来指导我 在 Hero
  • 认为 Sphinx 没有为新添加的记录建立索引

    我正在使用 sphinx 搜索 2 个模型及其关联 我正在使用增量索引 在我的开发盒上 在开发模式 Ubuntu 下一切正常 但是 在暂存盒生产环境中 当我创建新记录时 我需要再次构建索引以使新创建的记录可搜索 甚至奇怪的是 当我使用脚本
  • 强参数和多维数组

    我在用着轨道 3 2 6 with 参数强 https github com rails strong parameters gem 所以 我有一个具有典型更新操作的控制器 PUT api resources id def update r
  • HTTP 状态码 302

    我正在用 Ruby 开发 Rails 后端 并且想将数据发布到该服务器 但如果我用 PAW 发出后请求 我就会被重定向 我是 Http 请求的新手 有人可以向我解释一下功能以及如何使用 http post 请求吗 我想在我的服务器数据库 s
  • 使用 Carrierwave 上传到 S3 时获取 mp3 持续时间

    我正在编写一个应用程序 它基本上是一个音乐平台 我想通过其元数据获取 mp3 的持续时间 并将其保存在表中 然后再将其上传到 S3 我使用载波和雾宝石的组合来上传 提取 mp3 元数据以保存到数据库的推荐方法是什么 有一个用于此类操作的 g
  • 在 Rails 中使用 gem 时,“无法删除 Object::ClassMethods”源于什么?

    我在安装 gems 时经常遇到这样的问题 有谁知道这源于什么 我见过几个不同的案例 但仍然不知道到底是什么原因造成的 sudo rake gems install trace in u app releases 20100213003957
  • Rails RESTful 资源对包含分隔符的字段使用 to_param

    我希望我的 Rails 2 3 2 应用程序能够响应并生成 URL 如下所示 websites asd com websites asd com dns records new 在我的 config routes rb 中 我有 map r

随机推荐

  • Web应用Nat穿越

    我们正在全国各地的客户端计算机上使用 Tomcat 部署 Java Web 应用程序 一旦安装完毕 我们希望允许通过中央服务器远程访问这些 Web 应用程序 但我们不希望我们的客户端必须在其路由器上打开端口 有没有办法通过隧道传输 http
  • 如何使用gradle在Android Studio中导入远程库?

    我正在尝试导入 android swipelistview https github com 47deg android swipelistview https github com 47deg android swipelistview
  • C# 中的不可变类型和属性

    C 中的不可变类型和不可变属性是什么意思 你能举个简单的例子吗 不可变类型是其属性只能在初始化时设置的类型 一旦创建了对象 就无法再更改任何内容 不可变属性只是只读属性 在下面的示例中 ImmutableType是一种具有一个属性的不可变类
  • SQL服务器T-SQL语句

    我有一个表 其名称 UserData 及其包含一个列名称 用户信息 UserInfo 列包含以下值 例如 演示 acc in 瑞士网 澳大利亚大学教育网 我想从中提取以下信息 Output demo swiss austa 预先感谢您的帮助
  • cmake 中 -D 选项中的间距

    D CMAKE C COMPILER是我用来选择编译器的 但是 如果我有打开 关闭的 CMake 选项 例如USEIPHONEFLAG 我需要去做 DUSEIPHONEFLAG 1 D USEIPHONEFLAG 1不起作用 我想知道之后的
  • 如何从相机获取全尺寸位图?

    我已经使用意图来启动相机 Intent cameraIntent new Intent android provider MediaStore ACTION IMAGE CAPTURE getParent startActivityForR
  • 设置当前代理设置

    I used SCDynamicStoreCopyProxies检索代理信息 我希望一旦有了字典 我就能够设置当前的代理设置 结果发现字典返回的是SCDynamicStoreCopyProxies是只读的 如何更改当前的代理设置 到目前为止
  • Win8 是否也为旧版应用程序添加了内置拼写检查器?

    根据MSDN http msdn microsoft com en us library windows desktop hh869748 28v vs 85 29 aspx 在 Windows 8 中 内置拼写检查来编辑控件 好吧 我在我
  • 根据 WooCommerce 中的自定义字段值将文本添加到订单摘要

    我已成功将自定义字段添加到我的 WooCommerce 结帐页面 该字段是客户可以选择从中提取商品的不同商店的选择器 目前 它在结帐页面上显示此字段 我正在使用 jQuery 在选择器下方添加信息并相应地更新运费 接下来我需要做的是在客户的
  • iOS 崩溃:未加载库 mremap_encrypted

    应用程序审查团队说我的应用程序总是在启动时崩溃 他们给了我一些崩溃日志 如下所示 Dyld Error Message Dyld Message Library not loaded rpath RestKit framework Rest
  • 打印二维列表的Pythonic方法——Python

    我有一个这样的二维字符列表 a 1 2 3 4 5 6 7 8 9 将列表作为整个块打印的最 Pythonic 方法是什么 IE 没有逗号或括号 123 456 789 有很多方法 大概是一个str join的映射的str joins gt
  • 判断不定冠词的Javascript库

    是否存在用于确定名词的不定冠词 a 与 an 的 JavaScript 库 我可以从一个简单的正则表达式开始 如下所示 var pattern aeiou i pattern test umbrella 但这不能处理像这样的情况 user
  • int foo = foo 的标准参考

    int foo foo 编译 C 标准的哪一部分允许这样做 3 3 1 声明点 basic scope pdecl 名称的声明点紧接在其完整声明符 第 8 条 之后和其初始值设定项 如果有 之前 如果声明位于文件范围内 则行为已明确定义 如
  • 如何放心地比较\断言双值

    我正在尝试将 JSON 中的 assert double 与java 原始double 值进行比较 正确的做法是什么 我用简单而常规的方式来做到这一点 使用Matchers equalTo方法见下文 public class A priva
  • Java:相当于Python的范围(int,int)?

    Java 有与 Python 相当的东西吗range int int method 老问题 新答案 针对 Java 8 IntStream range 0 10 forEach n gt System out println n 或使用方法
  • C++ 中的线程安全单例实现

    以下是 C 中单例模式的一个众所周知的实现 但是 我不完全确定它是否是线程安全的 根据之前对类似问题的回答 它似乎是线程安全的 是这样吗 Curiously Recurring Template Pattern Separates a cl
  • SQL 仅当所有行都满足条件时才选择行

    我对 SQL 还很陌生 虽然我可以编写大部分查询 但在这个方面我一无所获 我想在可以使用 JPA 执行的单个查询中实现此目的 TABLE RULE RULE ID ENABLED 1 0 2 0 3 0 4 1 5 1 TABLE MISC
  • PHP - cookie 变量和会话变量的有趣行为

    我在下面写了一个 PHP 脚本来演示我的问题 像这样运行下面的代码 http localhost test php test 10 http localhost test php test 10 然后运行http localhost tes
  • 如何从 Haskell 中的字符串中提取所有数字?

    所以基本上 假设我有一个 String W2932 B23829 W29 如何提取所有数字以便我有一个列表 2932 23829 29 遗憾的是还没有在 SO 或 google 上找到任何解决方案 我考虑过检查字符串的每个字符是否为数字 然
  • 如何在 Rails 的页面中执行操作而不渲染新页面

    在我的 Rails 应用程序中 我尝试添加一个联系人用户弹出框 用于向用户发送电子邮件 我有 javascript 来显示弹出表单 它本身就是一个部分 当用户单击联系表单上的 提交 时 它会调用发送邮件的控制器操作 提交消息后 我想留在同一