我有一个表格,可以在Rails中收集大量信息.此表单的一部分是供新用户注册的字段.由于Deviate有专门用于创建新用户的控制器/操作,我不知道如何以编程方式在一个完全不同的操作中创建一个用户,该操作也会创建另一个记录.我真的不能把用户注册表分开.我不知道如何创建一个用户,然后让用户登录,就像我在Authlogic中很容易做到的那样.

我使用了Authlogic和design,认为它们各有优缺点.有了Desive,我喜欢快速"开始"一个新项目,但定制它似乎是一件痛苦的事.不久前,Authlogic在Rails 3上遇到了很多问题,所以我转而设计.我现在正在做一个新项目,从头开始.

所以我认为这个问题有两个可能的答案:(a)如何在Desive中实现这一点,或者(b)为什么我应该用Rails 3切换到Authlogic.

推荐答案

只需创建一个新的用户模型,就可以创建一个新的Desive用户(参见https://github.com/plataformatec/devise/wiki/How-To:-Manage-users-through-a-CRUD-interface)

@user = User.new(:email => 'test@example.com', :password => 'password', :password_confirmation => 'password')
@user.save

要登录新创建的用户,请使用sign_in @user

Ruby-on-rails相关问答推荐

RubyOnRail在测试环境中启动失败

Puma 工作人员无法在 Ubuntu 20.04 VM 上的 Rails 5.2 中启动

如何让删除链接响应 Rails 7 中的 turbo_stream 和 html?

为什么 Image_tag 产生images/...而不是assets/....?

我真正运行的是哪个 Ruby 版本?

比较 Rails 中的日期

在 Rails 中找不到关联问题

Rails:保存子对象时更新父对象

fields_for 表单构建器对象为零

Rails 3 中的动态错误页面

rspec 共享示例与共享上下文

Rails 3 中的猴子补丁

如何让空白复选框作为假传递给参数

Rails:使用 gem 卸载特定版本的库

Rails:仅在创建时验证,或者当字段不为空时在更新时验证

嵌套模型和父验证

Post.all.map(&:id) 是什么意思?

Ruby中的参数化获取请求?

has_many :通过 class_name 和 foreign_key

ruby on rails 如何处理 NaN