首页
学习
活动
专区
工具
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,您几乎可以部署所有内容。...Mina的deploy.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了。

    2.1K20

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

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

    4.9K00

    gitlab配置邮箱服务器

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

    7.1K31

    如何在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

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

    5K21

    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应用程序

    在这篇教程中,我们将介绍如何组装多层部署安装来托管基于Rails的Ruby 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

    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

    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.3K40

    使用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
    领券