ruby-on-rails – 如何防止Rails Console在db事务上立即执行回滚?

ruby-on-rails – 如何防止Rails Console在db事务上立即执行回滚?,第1张

概述我是rails的新手,我在控制台遇到了一些麻烦.我想将记录添加到Users表并测试一些功能.但是,每次执行User.create或类似功能时,它都会成功完成,然后立即回滚.如何防止立即回滚? 我不是沙箱模式. 以下是我在尝试创建用户时在控制台中获得的输出.它表示用户存在,然后立即回滚事务.然后我运行User.all只是为了表明事务确实被回滚. >>> User.create(first_name: 我是rails的新手,我在控制台遇到了一些麻烦.我想将记录添加到Users表并测试一些功能.但是,每次执行User.create或类似功能时,它都会成功完成,然后立即回滚.如何防止立即回滚?

@H_502_8@

我不是沙箱模式.@H_502_8@

以下是我在尝试创建用户时在控制台中获得的输出.它表示用户存在,然后立即回滚事务.然后我运行User.all只是为了表明事务确实被回滚.@H_502_8@

@H_502_8@

>>> User.create(first_name: "derek",last_name: "harrington",email: "[email protected]") (0.1ms)  begin transaction User Exists (0.2ms)  SELECT 1 FROM "users" WHERE "users"."email" = '[email protected]' liMIT 1 (0.1ms)  rollback transaction => #<User ID: nil,first_name: "derek",email: "[email protected]",password_digest: nil,credit_card_ID: nil,address_ID: nil,created_at: nil,updated_at: nil> >>> User.all User Load (0.3ms)  SELECT "users".* FROM "users"  => []

如何使这些更改永久化并防止回滚?@H_502_8@

编辑:@H_502_8@

这是我的用户模型的内容@H_502_8@

@H_502_8@

class User < ActiveRecord::Base  attr_accessible :first_name,:last_name,:email,:password,:password_confirmation  has_secure_password  valIDates :first_name,presence: true,length: { maximum: 50 }  valIDates :last_name,length: { maximum: 50 }  VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i  valIDates :email,presence:   true,format:     { with: VALID_EMAIL_REGEX },uniqueness: true  valIDates :password,confirmation: true,length: { minimum: 6,maximum: 50 }  valIDates :password_confirmation,presence: trueend
解决方法 所以看起来你没有提供密码确认,这就是它没有保存的原因. 总结

以上是内存溢出为你收集整理的ruby-on-rails – 如何防止Rails Console在db事务上立即执行回滚?全部内容,希望文章能够帮你解决ruby-on-rails – 如何防止Rails Console在db事务上立即执行回滚?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/langs/1279039.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存