首页 > 解决方案 > Ruby on Rails 如何为设计的注册创建操作添加功能?

问题描述

在设计中,当用户在注册页面上输入 create 时,我想在模型中将成员 bool 切换为 true。

因此,当调用 create 时,在保存之前我想将 bool 设置为 true,但由于设计没有任何控制器,我该怎么做。我无法扩展设计的注册控制器,因为这无助于我修改实际的创建操作以包含我想要的代码。我怎样才能做到这一点?

标签: ruby-on-railsrubydevise

解决方案


根据设计文档,您可以通过rails g devise:controllers users. 然后,它将生成一些文件,例如users/sessions_controller.rb其中带有注释方法:

class Users::SessionsController < Devise::SessionsController
  # GET /resource/sign_in
  # def new
  #   super
  # end
  ...
end

您可以取消注释您需要的方法并在之后添加您的自定义代码super(否则它将不起作用)。假设您已经User使用设计的生成器 ( rails g devise User)生成了模型,这应该可以解决问题


推荐阅读