gpt4 book ai didi

ruby-on-rails - simple_form 中的资源是什么?

转载 作者:行者123 更新时间:2023-12-04 06:06:32 26 4
gpt4 key购买 nike

我正在查看这个 simple_form_for 表单(注册表单)(registrations/new.html.erb)

去用户/注册

<%= simple_form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>

我查看了 github 上的 simple_form gem 文档并查看了 wiki。我还在 stackoverflow 上搜索什么是资源?我认为我的问题更像是 simple_form_for 如何使用资源?我理解代码的其余部分,而不是这一行。我认为此表单已发布到 registration_path。我没有 registration_path 但我有

user_registration 映射到 registrations#create 方法

我的注册 Controller 继承自设计注册。

在我的 route 我有这个

devise_for :users, :controllers => {:registrations => "registrations"}

最佳答案

resource 不是特定于 simple_form 的,而是特定于设计的。它是 DeviseController 中定义的一种方法,它获取存储在 Devise 模型实例变量中的实际资源,即您的案例中的 User 模型。

引用DeviseController class GitHub 中的代码以检查资源方法。

当您自定义 Devise::RegistrationsController 时,当您提交表单时,将调用自定义 RegistrationsController 的 create 操作。如果您没有在自定义 Controller 中覆盖 create 操作,那么调用将传播到父类,即 Devise::RegistrationsController#create

关于ruby-on-rails - simple_form 中的资源是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22585868/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com