首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在rails中使用带有自连接的form_with?

在Rails中使用带有自连接的form_with,可以通过以下步骤实现:

  1. 首先,在你的视图文件中,使用form_with方法创建一个表单。该方法接受一个模型对象作为参数,并生成一个表单,用于编辑该模型对象的属性。
  2. 在form_with方法中,使用url选项指定表单提交的目标URL。由于我们需要使用自连接,所以可以将url选项设置为当前页面的URL,即使用current_page_path方法。
  3. 在表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  4. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  5. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  6. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  7. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  8. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  9. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  10. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  11. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  12. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  13. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  14. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  15. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  16. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  17. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  18. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。
  19. 在嵌套的表单中,使用fields_for方法创建一个嵌套的表单,用于编辑模型对象的关联属性。在fields_for方法中,可以传入一个符号或字符串,表示关联属性的名称。
  20. 在嵌套的表单中,使用hidden_field方法创建一个隐藏字段,用于存储当前模型对象的ID。这个隐藏字段将在提交表单时传递给控制器,以便识别当前模型对象。

这样,你就可以在Rails中使用带有自连接的form_with了。请注意,以上步骤仅为示例,具体实现可能因你的应用程序需求而有所不同。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用rails实现最简单CRUD

和数据库迁移文件 log:日志文件 package.json:npm包记录,使用yarn管理 public:静态文件 test:测试 使用 rails server 命令启动服务器即可在本地...视图文件,将视图文件写入以下内容 hello, rails 此时,浏览器打开 / 和 /hello/index/ 路径都将返回同样内容 ?...文章增加 使用以下生成数据库模型: rails generate model Article title:string content:text 使用以下迁移数据库: rails db:migrate...使用以下命令生成控制器: rails generate controller Articles 配置articles路由: resources :articles 使用 rails routes 命令查看当前路由配置...按照上文中方法创建好 new.html.erb 文件和 new 方法,在 new.html.erb 文件写入: new article <%= form_with(scope:

3.2K40

如何部署Mina:入门教程

Mina将这些基于RAKE编程文件转换为Bash脚本,连接到已定义远程服务器并执行它们。 它实际上运行非常快,并且可能和它类型工具一样快,因为它只是连接到服务器并运行Bash程序。...生活在没有Rails世界:Mina可以做到以上所有,甚至更多,并且对Rails没有任何严重依赖。使用Mina,您几乎可以部署所有内容。...Minadeploy.rb脚本实际上是带有一堆分组任务RAKE文件。一切都是用Ruby编写,而不需要处理其他类型配置,您可以不需要熟悉任何你再也不会使用新东西。...Make是最广泛和最受欢迎实用程序之一,20世纪70年代末推出以来,它已经内置于Unix系统。Rake可以称为构建语言。...应用程序 关于Rails应用程序部署示例,请参考:“如何在CentOS 6.5上使用Unicorn和Nginx部署Rails应用程序”。

4.5K40
  • 何在SSH连接linux情况下使用wireshark抓包TSINGSEE青犀视频云边端架构产品问题?

    而大多数开发者用户都会使用linux版本进行安装。 ? 对于安装部署出现问题,TSINGSEE青犀视频团队研发经常为客户远程调试,通常都会通过抓取网络包方式进行排查。...当我们在使用SSH连接远程客户服务器时候可以有两种方式进行抓包,分别是: 通过tcpdump进行抓包,对于tcpdump抓包,保存到服务器,在拷贝到本地进行分析。...通过wireshark进行抓包,对于ssh连接后,如何使用wireshark? 本文我们就简单介绍一下如何在SSH连接linux情况,使用wireshark进行抓包。...6、在Xshell对创建SSH会话进行如下设置:“连接>SSH>隧道”“X11转移”,勾选“X DISPLAY”,参数无需修改。 此时通过SSH连接出现以下错误: ?...再次连接SSH ? 8、连接成功后,再次运行wireshark ? 可以看到wireshark正常启动了,就可以正常使用wireshark了。

    2K20

    何在Ubuntu 14.04上使用MySQL和Ruby on Rails应用程序

    如果您应用程序需要客户端/服务器SQL数据库(PostgreSQL或MySQL)可伸缩性,集中化和控制(或任何其他功能),则需要执行一些额外步骤才能启动并运行它。...本教程将向您展示如何在Ubuntu 14.04服务器上设置开发Ruby on Rails环境,以允许您应用程序使用MySQL数据库。首先,我们将介绍如何安装MySQL和MySQL适配器gem。...创建新Rails应用程序 在主目录创建一个新Rails应用程序。...配置数据库连接 如果您按照本教程MySQL安装说明操作,则为MySQLroot用户设置密码。MySQL根登录将用于创建应用程序测试和开发数据库。...IP地址在Web浏览器访问您Rails应用程序: http://server_public_IP:3000 如果您看到“欢迎登陆”Ruby on Rails页面,您应用程序已正确配置,并连接到MySQL

    4.9K00

    gitlab配置邮箱服务器

    GitLab是一个非常流行基于WebGit仓库管理工具,可以用于团队协作和版本控制。在GitLab,可以使用电子邮件来进行通知、邀请等操作。...为了使用这些功能,您需要在GitLab配置一个可用邮箱服务器。在本文中,我将介绍如何在GitLab配置电子邮件服务器。...要修改配置文件,请使用您最喜欢文本编辑器打开文件。在文件搜索“# GitLab Email settings”。...故障排除如果您无法收到测试电子邮件,则可能存在以下问题:您SMTP服务器地址、端口号或协议不正确。您SMTP服务器要求启用安全连接,但您设置不正确。...您还可以尝试使用其他电子邮件客户端,Outlook或Thunderbird,来测试您SMTP服务器是否可用。

    7K31

    何在CentOS 6.5上使用 Nginx+Passenger 部署Railes应用程序

    介绍 对于某个计算机编程领域新手来说,挑战永远不会结束。本文主题是Rails,以及如何在线获取基于Ruby On Rail Web应用程序 - 这是最简单,最快捷方式。...在本教程,我们将向您展示如何使用最新CentOS操作系统部署稳健Rails应用程序(即在线发布),该操作系统以其稳定性闻名。...注意:本节是我们专门文章如何在CentOS 6.5上安装Ruby 2.1.0摘要。...准备部署应用程序 注意:在本节,我们将使用一个非常简单Ruby On Rails应用程序作为示例。对于应用程序实际部署,您应该上传代码库并确保安装了所有依赖项。...创建示例应用程序/上传源代码 让我们首先在我们主目录创建一个非常基本Rails应用程序,以便与Passenger和Nginx一起使用

    5K20

    如何使用Passenger和Nginx部署Rails

    作为RailsWeb服务器,Passenger易于安装,配置和维护,可与Nginx或Apache一起使用。在本教程,我们将在Ubuntu上安装带有NginxPassenger。...第六步 - 部署 在本教程,我们将直接在CVM上创建一个新Rails应用程序。我们需要一个rails gem来创建新应用程序。...在我们示例,我们将使用名称testapp。如果要使用其他名称,请确保使用正确路径。我们将跳过Bundler安装,因为我们希望稍后手动运行它。...第七步 - 定期更新 要更新Ruby,您需要编译最新版本,本教程第四步所示。...如果你没有域名,建议您先去这里注册一个域名,如果你只是使用此配置进行测试或个人使用,则可以使用签名证书,不需要购买域名。签名证书提供了相同类型加密,但没有域名验证公告。

    5K20

    DevOps工具介绍连载(48)——静态扫描工具Brakeman

    如果caches_page在任何控制器调用,这将是高置信度警告。否则,弱。 提醒:Brakeman不是“依赖”扫描仪。它仅包括对少量与Rails相关CVE检查。...此版本带有全新报告格式:JUnit XML。...要使用新格式,请使用-f junit或-o report.junit。 变化 排序忽略文件 以前,“忽略文件”警告仅按指纹排序。...变化 命令危险串联 Jacob Evelyn更新了命令注入检查(CheckExecute),以考虑将字符串连接起来并带有危险值。...字符串长度限制 现在,Brakeman会在连接两个弦(例如"blah" + "blah blah")之前检查结果长度。如果连接字符串超过50个字符,则不连接字符串。

    2.2K10

    好雨云帮一周问答集锦(2.6-2.12)

    需要注意是版本需求,目前云帮支持centeros 7.2,ubantu 14.04。 云帮对于依赖操作系统支持是不断更新,最新文档请参考云帮安装手册 Q:如何在云帮上为我团队增加成员?...举例—— 云市安装MySQL服务: 默认是开启对内服务,它别名是 MYSQL 这样其他应用如果想使用这个MySQL服务,关联后就可以直接使用 MySQL_HOST 和 MYSQL_PORT 两个变量来连接这个数据库服务了...用户自己写API服务:如果用户自己开发了一个REST Full应用,只是内部调用使用,这时就可以开启对内服务,并设置好别名,这样团队账号其他应用就可以通过应用别名访问到这个REST Full应用了...Q:开发环境是Macbook pro,Rails5,如何部署到公有云上面? 对于Rails5.x支持将在近期上线,敬请期待!...使用Rails2.x、Rails3.x、Rails4.x,可参考文档Rails应用概述

    1.4K60

    何在Ubuntu上使用Passenger安装Rails和nginx

    完成后,您将全部使用Ruby on Rails设置,现在可以将它连接到nginx。 第五步,安装Passenger Passenger是在nginx或apache上部署Rails有效而简单方法。...在这个例子,我们将运行nginx安装。 安装Ruby on Rails后,继续安装passenger。...完成后,它将告诉您有关对nginx配置文件所做更改以及如何在虚拟服务器上部署Ruby on Rails应用程序。 最后一步是启动nginx,因为它不会自动执行。...第八步,将Nginx连接到您Rails项目 安装rails后,打开nginx配置文件 sudo nano /opt/nginx/conf/nginx.conf 将root设置为新rails项目的公共目录.../public; } 创建新rails项目,请按照下列步骤操作: 如果您还没有安装NodeJs: $ sudo apt-get install nodejs 在首选目录创建新rails应用程序:

    3.6K40

    何在CentOS 6.5上使用Unicorn和Nginx部署Rails应用程序

    在这篇教程,我们将介绍如何组装多层部署安装来托管基于RailsRuby Web应用程序。对于这种安排,我们将使用在Nginx后台运行功能强大,灵活且非常成功Unicorn应用服务器。...在本文中,我们选择应用服务器是Unicorn。Unicorn是一个卓越应用服务器,它包含你Rails应用程序来处理传入请求,最好是在它们被前端HTTP服务器(Nginx)过滤和发送之后。...准备Rails应用程序以进行部署 注意:在本节,我们将使用一个非常简单Ruby On Rails应用程序作为示例。对于应用程序实际部署,您应该上传代码库并确保安装所有依赖项(即bundle)。...创建示例应用程序 让我们首先在我们主目录创建一个非常基本Rails应用程序,以便与Unicorn一起服务。...,请输入app目录并运行一个带有rails s命令简单服务器: # Enter the application directory cd /var/www/my_app # Run a simple

    4.1K20

    DHH:2017年Rails 框架还值得学习吗?

    这是一篇意译文, 翻译 DHH( Rails 创始人 )在 Quora 上 Rails 问题回复. 近期, 看得出社区里一些人对 Rails 发展失了一些信心, 我想为大家找回一些信心....我已经在其他地方进一步详细阐述了在Rails 核心原则关于配置约定方法, 以及点菜 / omakase冲突说明, 和集成系统吸引力以及 Rails 社区其他核心价值....正如我上面提到, Rails 有一个雄心勃勃终极使命, 那就是站在全栈角度下, 帮助开发者处理好过程每一块代码, 从连接到数据库, 到 nosql 数据存储, 到业务模型, 到控制器, 直到最后...实际上, 最后一步输出 HTML 仅仅是我们关注很小一部分. 所以, 如果你认为客户端 MVC 框架 React, Angular 或者其他框架是未来, 你仍然是 Rails 目标用户....我们有着一个从实际开发需求而来, 全栈 web 框架, 当你使用 开始你项目时, 它将为你提供无与伦比生产力.

    2K90

    gitlab集成AD域控登录

    GitLab是一个开源代码托管和项目管理平台,它提供了一系列功能,代码托管、CI/CD、issue跟踪等。GitLab支持多种认证方式,包括LDAP、OAuth、CAS等。...本文将介绍如何在GitLab中集成AD域控登录。步骤:安装GitLab并启用AD域控认证首先,需要在GitLab服务器上安装GitLab,并启用AD域控认证。具体步骤如下:a....在安装过程,需要设置GitLab管理员用户名和密码。b. 启用AD域控认证在GitLab配置文件,可以设置AD域控认证参数。...在/etc/gitlab/gitlab.rb文件,添加如下配置:gitlab_rails['omniauth_enabled'] = truegitlab_rails['omniauth_allow_single_sign_on...测试AD域控登录完成以上步骤后,可以尝试使用AD域控登录GitLab。具体步骤如下:a. 访问GitLab登录页面在浏览器访问GitLab登录页面,并选择使用AD域控登录。b.

    9.2K40

    Ruby vs Elixir | 2022 该选哪个?

    使用 Elixir 一个最大好处就是你可以使用单核服务器上单核 CPU 或者多核服务器上多个 CPU 核心 plus:早期语言 Python、C 只能使用服务器单核进行计算(即使服务器有多核...使用 Elixir 无需在应用程序架构添加更多服务器来满足越来越多用户产生带宽需求。...相关文档 Elixir 官方网站 上有大量 Elixir 使用文档,以及非常活跃 Elixir 社区,文档也可以从终端阅读,非常方便。...在 Ruby 惯例优于配置,以保持代码简洁并使开发人员更有效率。但是,当经验较少开发人员不知道 Rails 背后细节时,可能会导致阻碍生产力和维护错误发生。...但是请相信这也是那些老项目中优秀 Ruby 代码所强烈需要。 本文翻译 https://www.monterail.com/blog/ruby-vs-elixir

    1.6K10

    使用SSH隧道保护三层Rails应用程序通信

    在本教程,您将在三层配置中部署Rails应用程序,方法是在三个单独服务器上安装一组唯一软件,配置每个服务器及其组件以进行通信和协同工作,并使用SSH隧道保护它们之间连接。...想要了解如何配置Nginx同学,可以参考这篇教程《如何在Ubuntu 16.04安装Linux,Nginx,MySQL,PHP(LNMP堆栈)》。...该 应用程序服务器 必须能够连接到 数据库服务器 才能访问所需Rails应用程序数据,和 web服务器 必须能够连接到 应用服务器 ,以便它有东西呈现给用户。...第五步 - 配置Rails使用远程数据库 现在已经建立了从 app-server 到 数据库服务器 tunnel,你可以将它用作Rails应用程序安全通道,通过tunnel连接到 数据库服务器 上...Web服务器到 app-server连接,以及从 app-server 到带有加密SSH隧道数据库服务器连接

    5.7K30

    如何使用RVM在FreeBSD 10.1上安装Ruby on Rails

    本教程将介绍如何在FreeBSD 10.1服务器上使用RVM设置Ruby on Rails开发环境。 课程准备 在开始之前,您只需要: 一个FreeBSD 10.1 腾讯CVM。...50295) [x86_64-freebsd10.1] 第4步 - 安装Ruby on Rails 在这一步,我们将安装Ruby on Rails。...因为Ruby on Rails是一个gem,所以可以使用RubyGemsgem install rails(Ruby包管理框架)轻松安装它。...如果您还不在/tmp目录,请更改为该目录。 cd /tmp 使用rails命令创建一个名为test-project新项目(或任何您喜欢项目)。...exit 结论 在本教程,您学习了如何在FreeBSD 10.1服务器上设置Ruby on Rails。您现在可以使用FreeBSD服务器作为Rails项目的开发环境!

    4.6K10
    领券