如何在覆盖控制器后在 activeadmin 表单中显示错误

2024-04-01

我遇到一种情况,我需要覆盖 activeadmin 中的创建。我自动填充字段,如果数据已经存在,则应该更新,否则创建。这是我的创建方法:

def create
      id = params[:company].dig(:id)
      if id.present?
        @company = Company.find(id)
        if @company.update(permitted_params[:company])
          redirect_to resource_url
          flash[:notice] = 'Company created successfully'
        else
          #add errors to semantic errors
        end
      else
        new_permitted_params = permitted_params[:company].except(:id)
        @company = Company.new(new_permitted_params)
        @company.save
        if @company.errors.any?
          #add this to semantic errors so that activeadmin handles and displays the errors
        end
     end
  end

我想显示违反验证的错误,以便用户知道他/她是否输入了无效条目。

I found this https://stackoverflow.com/questions/37965870/after-adding-controller-in-active-admin-resource-validations-error-cannot-be-s/37966168但它看起来更像是一种解决方法,而不是解决方案。请帮我解决这个问题。

提前致谢。


我在名为的视图中创建了一个新的 HTML 文件new.html.arb并添加了insert_tag renderer_for(:new)在里面。之后我所做的就是

if @company.errors.any?
  render 'new'
end

我通过查看 activeadmin 的默认行为发现了它。我希望这可以帮助其他想做类似事情的人。这是我得到的结果,也是我所要求的。

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

如何在覆盖控制器后在 activeadmin 表单中显示错误 的相关文章

  • 包括 collection_select 帮助程序的空白和默认值

    我希望在 Rails 应用程序的下拉列表中有一个 选择一个选项 选项 我正在使用collection select辅助标签 它看起来像这样 我希望下拉菜单的默认选项是 选择国家 地区 Use the include blank option
  • YouTube 视频出现 Phantom JS 错误

    Phantom JS 版本 1 9 1 恶作剧版本 1 3 0 从今天开始 YouTube 嵌入视频在运行 javascript 测试时会出现 poltergeist 错误 我的 YouTube 代码只是默认的嵌入 YouTube 代码 这
  • Rails:将参数从视图传递到控制器

    我在 Rails 中有以下模型 class Task lt ActiveRecord Base attr accessible description name project belongs to project validates na
  • 使用 PostgreSQL 的模式和 Rails 创建多租户应用程序

    我已经想通的事情 我正在学习如何在 Rails 中创建多租户应用程序 该应用程序根据用于查看应用程序的域或子域来提供来自不同模式的数据 我已经回答了一些问题 如何让 subdomain fu 也能与域一起使用 这是有人问了同样的问题 htt
  • 设计和自定义 Rails 用户 URL

    我目前正在使用 Rails 3 2 5 和最新的 devise gem 目前用户可以访问他们的个人资料页面 example com users john doe 我想删除网址的用户部分 因此网址将是example com john doe
  • Rails 3:用户创建自定义表单?

    我正在尝试思考如何允许用户创建具有所有字段类型的自定义表单 如果有一颗宝石那就太好了 但我似乎无法在任何地方找到它 所以我有一个像这样的数据库设置 t integer form id t string name t string hint
  • 如何在 Rails 3 中查看用户的实时活动?

    我想做的是让我的管理员用户能够实时 通过一些 AJAX jQuery 功能 看到我的用户正在做什么 我该如何去做呢 我认为它与会话活动有关 并且我已经开始将会话保存到数据库 而不是 cookie 但一般来说 我如何获取该信息并实时解析它 我
  • 限制 has_many 关联中的对象数量

    我有一个相册 里面有很多照片 counter cache 设置会更新相册表中的 photos count 列 如何限制相册的照片数量 就我而言 使用就足够了validates length of class Album has many p
  • Rails & Devise:如何在没有布局的情况下呈现登录页面?

    我知道这可能是一个简单的问题 但我仍在试图弄清楚Devise https github com plataformatec devise out 我想要render layout gt false在我的登录页面上 我怎样才能做到这一点Dev
  • 在模型中重复数据以满足在集合中使用迪米特定律是否合适?

    这是一个人为的例子 假设我想列出一个人有朋友的国家的人口 这里有下面两个设置 最好在模型中重复数据吗 有人告诉我得墨忒耳定律 http en wikipedia org wiki Law of Demeter遵循这一点很重要 例如你告诉狗走
  • Capistrano 部署擦除数据库?

    我已成功使用 Capistrano 将我的应用程序部署到生产环境 但我不明白如何处理我的数据库 我正在使用颠覆和乘客 当我运行 cap 部署时 新部署会重新启动一切 它会清除添加到数据库中的数据 显然 必须有一个解决方案 但我很惊讶没有在网
  • 来自 csv.read 模拟文件的 rspec 测试结果

    我正在使用 ruby 1 9 并且正在尝试执行 BDD 我的第一个测试 应该在 csv 中读取 有效 但第二个测试 我需要模拟文件对象 却不起作用 这是我的型号规格 require spec helper describe Person d
  • 如何为 MySQL 和 Postgres 编写不区分大小写的查询?

    我在本地运行 MySQL 数据库进行开发 但部署到使用 Postgres 的 Heroku Heroku 处理几乎所有事情 但我不区分大小写的 Like 语句变得区分大小写 我可以使用 iLike 语句 但我的本地 MySQL 数据库无法处
  • 为 Ruby On Rails 环境创建 Docker 映像时出错(从 Dockerfile)

    估计是环境问题 当我手动执行此操作 没有 Dockerfile 时 它可以工作 这是我的 Dockerfile FROM ubuntu 14 04 RUN apt get update RUN apt get upgrade assume
  • Rails API 设计无需禁用 CSRF 保护

    早在 2011 年 2 月 Rails 就改为需要 CSRF 令牌all non GET http weblog rubyonrails org 2011 2 8 csrf protection bypass in ruby on rail
  • 默认更新嵌套属性

    我尝试更新 iProduction 这是生产中的嵌套表单 但此行出现参数错误 参数数量错误 0 代表 1 生产 update iproducts attributes cow id cow 我的创作动作制作 def create produ
  • 使用ajax轮询服务器

    我正在建立一个网站 该网站有一个用户可以互相发送消息的系统 我希望这样当登录用户收到消息时 他会在屏幕上看到一些更新告诉他这一点 这些消息不必是实时的 所以我认为我不想用彗星或主宰之类的东西来推动 相反 我很乐意每隔一分钟左右轮询一次服务器
  • 在 Rails 5.1 及更高版本中,使用什么来代替“render :text”(和“render Nothing: true”)?

    轨道 5 1 其中就有老朋友render text 当你需要渲染的时候它非常有用some文本 但不想要视图模板的开销 例子 render text ok render text t business rules project access
  • 将 Twitter 引导样式添加到 Rails 表单助手

    在阅读建议我使用带有引导程序集成的 Simple form gem 的答案后 我安装了它并根据 simple form 说明创建了我的表单 但输入框向右浮动 这是布局 正在使用部分 shared reg 调用该表单 div class co
  • 将文件传递给活动作业/后台作业

    我通过标准文件输入接收请求参数中的文件 def create file params file upload Upload create file file filename img png end 但是 对于大型上传 我想在后台作业中执行

随机推荐

  • 对于颜色逐渐变化的多个绘图,显示 matplotlib 颜色条而不是图例

    我正在尝试制作一个简单的图 显示属于具有特定顺序的大型数据集的许多曲线 比方说图 1 n 曲线的形状随着n的增加而逐渐变化 读者能否准确地看到哪个图属于 n 的哪个值并不重要 但他们应该能够猜测 n 的数量级 因此我做了这样的事情 nVal
  • 如何在 Scala 编译器插件中生成文本形式的新源代码?

    我刚刚完成了 Java 6 编译器插件的第一个版本 它根据注释自动生成包装器 代理 适配器 委托 您可以随意称呼它 由于我正在进行 Java Scala 混合项目 因此我希望能够在 Scala 代码中使用相同的注释 并获得相同的生成代码 当
  • 如何导航到 Clion 链接库中的源代码?

    我有一个链接多个静态库的项目 例如 libModule a 当我尝试导航到模块库内的类时 Clion 仅将我带到标头声明并在那里停止导航 我希望能够深入研究模块库内函数的定义 我遇到了同样的问题 这就是我所做的 在 Clion 中 我通过在
  • Angular2 错误 TS1146:需要声明

    Angular2 新手 我正在使用 Angular io 中的种子文件 但是当我运行 npm start 时 出现 tsc 编译器错误 tsc p src src app app module ts 11 3 错误 TS1146 需要声明
  • 向几何体添加细分

    我正在尝试向球体添加细分 如下所示 http stemkoski github com Three js Subdivision Cube html http stemkoski github com Three js Subdivisio
  • Ajax POST 到控制器操作以更新视图模型,然后重新加载 div

    我仍然对 ajax 的使用感到不安 所以我的实现中存在一些漏洞 我正在尝试发布到一个控制器操作 该操作将调用存储过程来更新我的视图模型 然后重新加载将显示信息的 div 阿贾克斯帖子 order summary panel click fu
  • 在Python中使用@staticmethod和全局函数有什么区别?

    我读过了 staticmethod 和 classmethod 有什么区别 Python https stackoverflow com questions 136097 what is the difference between sta
  • iOS 6 问题将 MPMediaItem 转换为 NSData

    我试过下面的代码 void mediaItemToData MPMediaItem curItem NSURL url curItem valueForProperty MPMediaItemPropertyAssetURL AVURLAs
  • HTML 敏捷包设置

    我正在使用 Agility Pack 来解析 HTML 遵循这个问题在 C 中解析 html 的最佳方法是什么 https stackoverflow com questions 56107 what is the best way to
  • 无法在 VSCode 中调试 Typescript

    这是我的 launch json version 0 2 0 configurations type node name Launch Server request launch program workspaceRoot server s
  • Spring Boot + Gradle - 在哪里放置环境配置?

    我正在 Spring Boot 中开发一个简单的应用程序 它是在本地开发的 并且可以工作 Gradle H2 数据库的连接属性设置为application properties放置在项目的根目录下 Maven 文件夹结构 src main
  • 更改导航栏颜色

    我知道从 API 21 开始可以更改导航栏的颜色 我查看了 React Native 的文档 但找不到方法来做到这一点 我知道的唯一方法是创建一个本机模块 但这似乎不是一个好的解决方案 因为我正在使用 Expo 有内置的方法可以做到这一点吗
  • BizTalk 平面文件架构 - 如何接受 LF 或 CRLF 作为行分隔符

    我们的客户向我们发送一个平面文件作为输入 然后我们将其转换为 XML 文件 然后发送到目标系统 平面文件由多行组成 每行由 LF 或 CRLF 分隔 如何创建平面文件架构 以便 BizTalk 可以解释每一行数据 无论该行是由 LF 0x0
  • ADODB 记录集列标题

    我正在复制ADODB Recordset数据到 Excel 文件 但它将记录集数据复制到 Excel 没有列标题 我使用的是 MS Access 2013 CompyFromRecordset命令 我的问题是 有没有办法复制RecordSe
  • 可视化二分图

    有人可以推荐一个库或代码来可视化 C 中的二分图吗 Graph 似乎不直接支持这种图 但有 一些支持解开顶点 我想创建一些像这样的图形二部图 http upload wikimedia org wikipedia commons e e8
  • 如何使用 spl_autoload() 代替 __autoload()

    根据http php net manual en language oop5 autoload php http php net manual en language oop5 autoload php神奇的功能 autoload 自 PH
  • @singleton 的行为类似于@stateless bean

    我正在开发一个应用程序 java中的企业应用程序 其中我需要由多个线程同时共享的单个实例 我使用了 singleton 当每个用户登录时 通过调用 setTeleCallersDetails 远程方法在电话呼叫者列表中设置一个值 但在某些时
  • 如何从 Hive 中的 json 字符串中提取选定的值

    我在 Hive 中运行一个简单的查询 生成以下输出 以及一些其他附加列 col1 col2 A variable1 123 variable2 456 variable3 789
  • Marshal.GetFunctionPointerForDelegate 如何作用于实例成员?

    我想知道 Marshal GetFunctionPointerForDelegate 即我想知道它如何将委托转换为非静态函数到函数指针 它是否动态生成以某种方式附加实例的代码存根 如果是这样 这不会泄漏内存吗 也许委托在其终结器中释放了它
  • 如何在覆盖控制器后在 activeadmin 表单中显示错误

    我遇到一种情况 我需要覆盖 activeadmin 中的创建 我自动填充字段 如果数据已经存在 则应该更新 否则创建 这是我的创建方法 def create id params company dig id if id present co