腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
rails 3 - widget.save和widget.save之间的区别!
在Rails 3中,widget.save和widget.save!之间有一些区别。
widget.save:这是一个保存widget对象到数据库的方法。它会执行验证(如果有定义验证规则),如果验证通过,则将对象保存到数据库中,并返回true。如果验证失败,则返回false,并且对象不会保存到数据库中。
widget.save!:这也是一个保存widget对象到数据库的方法,但是它会抛出一个异常(通常是ActiveRecord::RecordInvalid异常),而不是返回false。如果验证失败,会抛出异常,并且对象不会保存到数据库中。
区别:
错误处理:widget.save会返回一个布尔值,你可以根据返回值来处理错误。widget.save!会抛出异常,你可以使用begin/rescue块来捕获异常并处理错误。
事务处理:widget.save会在事务中保存对象,如果保存失败,事务会回滚。widget.save!也会在事务中保存对象,但是如果保存失败,事务会回滚,并且抛出异常。
返回值:widget.save返回一个布尔值,表示保存是否成功。widget.save!不返回任何值,如果保存失败,会抛出异常。
推荐的腾讯云相关产品和产品介绍链接地址:
腾讯云数据库MySQL:
https://cloud.tencent.com/product/cdb
腾讯云云服务器CVM:
https://cloud.tencent.com/product/cvm
腾讯云云函数SCF:
https://cloud.tencent.com/product/scf
腾讯云对象存储COS:
https://cloud.tencent.com/product/cos
腾讯云人工智能AI:
https://cloud.tencent.com/product/ai
相关搜索:
+和CONCAT之间的区别?
3层和n层架构之间的区别
<?php和<?之间的区别
Actionscript 3,比例和维度之间的区别是什么
if(){}和if()之间的区别:endif;
if和cond之间的区别?
Intent和PendingIntent之间的区别
Popen: python 2和3之间的区别
Rails v2.3:会话和cookie之间的区别
Rails:ActiveRecord中创建方法和新方法之间的区别?
相关搜索:
+和CONCAT之间的区别?
3层和n层架构之间的区别
<?php和<?之间的区别
Actionscript 3,比例和维度之间的区别是什么
if(){}和if()之间的区别:endif;
if和cond之间的区别?
Intent和PendingIntent之间的区别
Popen: python 2和3之间的区别
Rails v2.3:会话和cookie之间的区别
Rails:ActiveRecord中创建方法和新方法之间的区别?
页面内容是否对你有帮助?
有帮助
没帮助
相关·
内容
文章
问答
(9999+)
视频
沙龙
1
回答
Rails
3
-
widget.save
和
widget.save
之间
的
区别
!
ruby-on-rails
、
activerecord
有时我会看到!在保存之后,以及其他一些活动记录方法之后...有什么关系?
浏览 5
提问于2011-03-11
得票数 4
回答已采纳
1
回答
Ruby on
Rails
服务器在重新启动之前不会反映对数据库记录
的
更改
ruby-on-rails
、
ruby
、
sqlite
、
rails-activerecord
如果我打开
Rails
控制台并创建一个新
的
Widget:>> widget.name = "Whatever"Widget保存时不会出错但是,当我运行以下命令时:此新Widget不会出现在返回
的
记录列表中。但是,如果我重新启动
Rails
控制台并再次运行相同
的
命令:该小部件现
浏览 1
提问于2013-01-26
得票数 2
2
回答
如何在更新关联时销毁其他has_one关系?
ruby-on-rails
、
transactions
、
controller
时,我想销毁与User相关
的
旧
的
。# => #<Widget id: 2, user_id: 1>widget = Widget.new :user => user现在,两者都存在:Widget.find(
3
) # => #<Widget id:
3
, user_id: 1>
和
用户<
浏览 6
提问于2011-08-29
得票数 5
3
回答
如何在Rspec中规范validates_uniqueness_of?
ruby-on-rails-3
、
rspec2
(使用rspec 2.5.0
和
rails
3.0.5)
浏览 9
提问于2011-03-12
得票数 5
回答已采纳
1
回答
Mongoid嵌套has_one问题
ruby-on-rails
、
mongoid
我正在尝试使用mongoid更新嵌套
的
has_one模型,但它不会持久化has_one关联小部件模型 includeembedded_in :widget 用户模型 include Mongoid::Document 这是我从
rails
控制台得到
的
结果; @widget.permissions << Perm
浏览 0
提问于2011-08-29
得票数 1
回答已采纳
1
回答
从一个控制器操作多次更新模型
ruby-on-rails
所以我有一个支付模型
和
一个小部件模型。它们
之间
没有关联(付款与客户关联)。处理这个问题
的
最好方法是什么?
widget.save
!how-many-widgets = how-many-widgets - 1 endend 这是最好
的
方法吗?还是有更好
的
解决方案?
浏览 0
提问于2012-05-17
得票数 0
回答已采纳
1
回答
Rails
:在多个子域
之间
划分单个数据库
ruby-on-rails
、
ruby-on-rails-3
、
namespaces
、
controller
、
subdomain
我对
Rails
比较陌生,下面是我
的
情况:branch1.inventoryapp.com branch2.in
浏览 0
提问于2011-07-01
得票数 3
回答已采纳
3
回答
Rails
ActiveRecord:如何知道是否找到或创建了find_or_create_by?
ruby-on-rails
、
activerecord
widget = Widget.find_or_create_by_widgetid(:widgetid => "12345", :param2 => "folk") 等,那么我如何判断newobj是找到
的
还是新创建
的
有什么我可以在widget上有条件地测试
的
东西,它会告诉我吗?
浏览 0
提问于2011-11-07
得票数 50
回答已采纳
1
回答
用于构建另一个模型
的
Rspec隔离测试
ruby-on-rails
、
rspec
我有以下
Rails
模型: has_many :widget end这里面有一些我正在努力解决
的
问题: 1)如何隔离工厂测试,使我不依赖于widget.verify
的
结果!(我已经在Widget模型
的
单独规范中介绍了这一点)。因为这个方法是在方法内部硬编码
的
,所以
浏览 0
提问于2017-03-07
得票数 0
回答已采纳
5
回答
在Visual中( T).ForEach中
的
操作( T)
vb.net
、
generics
、
foreach
我搜索了很多关于如何使用这个特性
的
文档。虽然我可以编写
的
循环很简单,而且不需要花时间,但我真的很想学习如何使用它。widgetList.ForEach([enter Action(Of T) here]) ....but在F中是如何工作
的
?在内部
的
任
浏览 0
提问于2009-05-21
得票数 11
回答已采纳
1
回答
Backbone.Marionette +
Rails
应用程序在表单提交后重定向。为什么?
javascript
、
ruby-on-rails
、
forms
、
backbone.js
、
marionette
抛出问题
的
奇怪之处在于,一旦我提交表单并将模型保存到
Rails
后端,浏览器就会自动重定向到根url,并将所有的表单params作为URL (例如http://localhost:3000/?quantity=4&color=red&needed_by=2015-06-15T04%
3
A00%
3
A00.000Z&kind=Widget+Pro)。这个重定向提示
Rails
获取控制器上
的
#index方法(这是空白表单,因为这是应用程序
浏览 4
提问于2015-06-08
得票数 0
回答已采纳
2
回答
在
Rails
应用程序中找不到表错误
ruby-on-rails
、
devise
我有一个
rails
应用程序,在users
和
widgets
之间
建立了一个多到多
的
关系。“用户”是通过devise gem生成
和
管理
的
。当以用户身份登录时,我会得到以下错误: 找不到表“users_widgets” end def create @user =
浏览 0
提问于2016-02-28
得票数 0
回答已采纳
5
回答
Rails
控制器设计
ruby-on-rails
当我查看
Rails
控制器
的
示例时,我通常会看到这样
的
情况: @widget= Widget.new @widget = Widget.new(params[:id]) redirect_to如果用户在新小部件页面上输入不正确
的
信息并提交它,他们
的
浏览器将使用&
浏览 1
提问于2013-03-04
得票数 2
回答已采纳
1
回答
我是否可以使用‘ActiveAdmin’+自定义重定向覆盖ActiveAdmin控制器操作
的
一部分?
ruby-on-rails
、
ruby
、
redirect
、
activeadmin
、
monkeypatching
我已经在ActiveAdmin中注册了一个Widget,并且希望在创建一个新
的
控件之后更改重定向。我可以填写其他
的
自定义操作来完成此操作,但我不知道如何处理.save失败而用户被重定向回表单
的
情况,并带有表单内嵌错误消息。如果我想要创建一个错误消息列表
的
常规
Rails
表单行为,但不足以复制它
的
行为,我知道如何做到这一点。到目前为止我有这样
的
想法: def create @widget = Widget.new(params[:w
浏览 1
提问于2014-11-26
得票数 1
回答已采纳
1
回答
belongs_to关联
的
条件是什么?
ruby-on-rails
、
activerecord
: nil, big_bloop_id: nil>=> #<Bloop id: nil, name: nil, big_bloop: nil>>> widget.big_bloop = big_bloop => #<Bloop id: nil, name: ni
浏览 4
提问于2010-01-28
得票数 7
回答已采纳
1
回答
将参数从angularjs传递到
rails
项目
ruby-on-rails
、
angularjs
我有两个项目: 1.
rails
项目。2. 2.angularjs项目。在
rails
项目中,我有一个由scaffold创建
的
widget模型。现在,我想从angularjs项目中获取小部件数据,并将数据发送到
rails
控制器。widgets.json @widget = Widget.new(widget_params) if @
widget.save
/widgets_controller.rb:
浏览 0
提问于2014-07-19
得票数 0
1
回答
Rails
自定义验证-属性在不同模型中
的
唯一性
ruby-on-rails
我一直在定义一个自定义
的
验证方法,其目的是验证属性在两个模型中
的
唯一性这是一个带有自定义验证
的
模型,用于检查另一个模型属性,错误未定义
的
局部变量或方法
浏览 0
提问于2014-03-20
得票数 1
2
回答
自动递增Grails中
的
整型字段
grails
、
auto-increment
如果我有与Pix有一对多关系
的
域对象Widget,那么每次Widget获得新
的
Pix时,Pix都需要递增displayOrder。属于小部件
的
Pixes集合是一个sortedSet。
浏览 1
提问于2012-01-21
得票数 1
回答已采纳
1
回答
rails
4 ajax事件未触发成功
jquery
、
ruby-on-rails
、
ruby-on-rails-4
我正在我
的
rails
4演示应用程序上工作,我有一个按钮可以在服务器端完成一些工作,然后返回json并给出一个成功或失败
的
消息。类似于
的
问题,我看到响应返回了200段代码
和
预期
的
json有效负载,但是jQuery成功事件没有触发--为了使它更加混乱,它似乎有点断断续续--有时我得到了适当
的
操作(显示闪存消息
和
删除div),但大多数情况下什么都不会发生这是视图中
的
按钮: <%= link_to 'Do Work'
浏览 4
提问于2014-03-26
得票数 1
回答已采纳
2
回答
Rails
3
和
3.2
之间
有很大
的
区别
吗?
ruby-on-rails
我想学习Ruby on
Rails
,到目前为止我一直是用PHP开发
的
,但现在我想尝试一些新
的
东西,我在网上找到了这本()书,它依赖于Ruby3.0,而上一个版本是3.2.1 在
Rails
3
和
3.2
之间
有很大
的
不同,如果是的话,使用这本书可能会有很大
的
问题,这些变化是什么?编辑:如果你知道一些其他
的
资源,请把它们贴出来
浏览 0
提问于2012-02-27
得票数 0
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
POP3、SMTP和IMAP之间的区别和联系
JavaScript和PHP 之间的区别
Java和JavaScript之间的区别
网关和路由器之间的区别
REST API和SOAP API之间的区别
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券