gpt4 book ai didi

ruby-on-rails - Rails生成设计:Controllers not Working

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

简单的问题。

我正在为我的应用程序使用 Rails 4.1.4 Devise 3.3.0

我正在尝试生成设计的 Controller ,以便可以覆盖某些行为。

文档说要运行...

rails generate devise:controllers [scope]



...在app/controllers/scope下生成 Controller ,因此您可以对其进行修改。但是当我运行前面的命令时,它总是说没有生成器devise:controllers:

Could not find generator devise:controllers.



有谁知道为什么吗?

谢谢。

更新

实际上,当我运行时...

rails generate



...以检索可用生成器的列表,我得到了 Devise 生成器的以下输出:

Devise:

devise

devise:install

devise:views



因此,肯定没有 devise:controllers 生成器。有没有添加它的方法?如何?。

谢谢。

最佳答案

解决了

我刚刚手动创建了 Controller ,并使其继承自 Devise 。例如:

class Users::RegistrationsController < Devise::RegistrationsController
# Override the action you want here.
end

该 Controller 应位于app/controllers/users/registrations_controller.rb中。如果还有其他作用域,请使用app/controllers/scope/registrations_controller.rb。例如,如果您具有管理员作用域,则为app/controllers/admins/registrations_controller.rb。

最好的。

更新

在blushrt发表评论之后,我忘了提到修改config/routes.rb以使 设计使用为特定资源创建的 Controller 很重要。例如,对于用户,您应该输入config/routes.rb:
devise_for :users, controllers: { registrations: "users/registrations" }

就是这样。最好的。

关于ruby-on-rails - Rails生成设计:Controllers not Working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26184905/

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