- 浏览: 243093 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (173)
- ruby (38)
- rails (42)
- javascript (7)
- jquery (1)
- linux (15)
- design patterns (1)
- project management (6)
- IT (7)
- life (19)
- data structures and algorithm analysis (2)
- css (1)
- prototype (1)
- mysql (4)
- html (1)
- git (3)
- novels (1)
- c (1)
- Latex (13)
- erlang (1)
- 求职 (1)
- API (0)
- Shell (4)
- Rabbit MQ (1)
- 计算机基础 (1)
- svn (2)
- 疑问 (1)
最新评论
-
zhangyou1010:
回去倒立去,哈哈。
作为一个程序员,身体很重要! -
Hooopo:
Ruby MetaProgramming is all abo ...
Metaprogramming Ruby -
orcl_zhang:
yiqi1943 写道LZ现在上学还是工作呢工作好多年了。不过 ...
2011年 -
yiqi1943:
LZ现在上学还是工作呢
2011年 -
tjcjc:
query cache
就是一个简单的hash
key就是sq ...
Rails sql延迟加载和自带缓存
今天同事问我关于rails transaction,如果有多个不同表回滚,如何做。我告诉他,就嵌套着写多个transaction,而且十分坚定的告诉他:只写一个是绝对绝对不行的!我以前遇到过,多表回滚的问题,后来就是这样解决的!
同事表示怀疑,去看api,告诉我,我错了,我当时怒了,不可能吧!
经过讨论,又看完api,一起做了一个小测试,证明我确实错了。
很久以前,其实我也不是很明白多表回滚如何实现,记得当时写过一个多表保存,要求有回滚。发现数据更新时有问题,找不到原因。我以为是多表回滚失败导致的,后来看了下面的帖子。http://www.iteye.com/problems/18595google,搜索“rails,多表事务”,第一页第一个就是(JE的SEO做的还是不错的)。当时照着这个方法,加上嵌套的transaction,修改后,测试没问题。所以对此法深信不疑。其实当时的的错误并没有修改,而是没有测试到。
关于rails的多表回滚,只要写一个就可以。api解释如下http://api.rubyonrails.org/classes/ActiveRecord/Transactions/ClassMethods.html
现在,大家知道了这个问题的回答是错误的,但是无论是作者还是回答者都无法对问题进行修改。JE的SEO做的不错,我不清楚有多少人会通过google第一页,搜索rails,多表事务来找到这个问答,又有多少人会会被这个帖子误导。
众多人都表示压力很大。只要采纳或者过期就无法编辑。
趁这个机会对问答版块提点建议:
1,对问题答案采纳后也能够进行编辑。
2,最好能够向stackoverflow等网址借鉴些经验,所有用户都可以对问题答案进行一个简单投票,这样大家在看问题回答的时候,可以有重点的查看。并且能够对最终的结果进行一个汇总和编辑,虽然采纳了某个人的答案,但是并不意味这最终的答案是属于这个人的,应该是集思广义,对最后的结果进行一个编辑汇总,这样的结果才是一个最佳的结果。
3,我一直不明白为什么提问题还要积分?用完积分不是就不能提了么?提的问题好应该给加分,但是同时如果这个问题没有任何意义,google一搜一堆结果,同样可以投反对票。
大家有什么好的建议可以一起提出来。我帮忙汇总下。
只要你想找怎么找不到,点两步后退再刷新,不是就看见了么...我倒是很不喜欢csdn那个跳回原来链接的东西,为毛让我等三秒啊
http://hideto.iteye.com/blog/857049
我没有太高要求,只是有一点建议:1,对问题答案采纳后也能够进行编辑,并不难。
je怎么定位是肉饼的事情,我看不出来,我提了意见,执行不执行我就管了。
太差你又跑来这里干什么呢?犯贱?去些体验好的地方吧。
这里好像没人要挽留你啊.你去做个不烂的吧。
我觉得也不方便。
je 改一下 咯
同事表示怀疑,去看api,告诉我,我错了,我当时怒了,不可能吧!
经过讨论,又看完api,一起做了一个小测试,证明我确实错了。
很久以前,其实我也不是很明白多表回滚如何实现,记得当时写过一个多表保存,要求有回滚。发现数据更新时有问题,找不到原因。我以为是多表回滚失败导致的,后来看了下面的帖子。http://www.iteye.com/problems/18595google,搜索“rails,多表事务”,第一页第一个就是(JE的SEO做的还是不错的)。当时照着这个方法,加上嵌套的transaction,修改后,测试没问题。所以对此法深信不疑。其实当时的的错误并没有修改,而是没有测试到。
关于rails的多表回滚,只要写一个就可以。api解释如下http://api.rubyonrails.org/classes/ActiveRecord/Transactions/ClassMethods.html
引用
Different Active Record classes in a single transaction
Though the transaction class method is called on some Active Record class, the objects within the transaction block need not all be instances of that class. This is because transactions are per-database connection, not per-model.
In this example a balance record is transactionally saved even though transaction is called on the Account class:
Account.transaction do
balance.save!
account.save!
end
The transaction method is also available as a model instance method. For example, you can also do this:
balance.transaction do
balance.save!
account.save!
end
Though the transaction class method is called on some Active Record class, the objects within the transaction block need not all be instances of that class. This is because transactions are per-database connection, not per-model.
In this example a balance record is transactionally saved even though transaction is called on the Account class:
Account.transaction do
balance.save!
account.save!
end
The transaction method is also available as a model instance method. For example, you can also do this:
balance.transaction do
balance.save!
account.save!
end
现在,大家知道了这个问题的回答是错误的,但是无论是作者还是回答者都无法对问题进行修改。JE的SEO做的不错,我不清楚有多少人会通过google第一页,搜索rails,多表事务来找到这个问答,又有多少人会会被这个帖子误导。
众多人都表示压力很大。只要采纳或者过期就无法编辑。
趁这个机会对问答版块提点建议:
1,对问题答案采纳后也能够进行编辑。
2,最好能够向stackoverflow等网址借鉴些经验,所有用户都可以对问题答案进行一个简单投票,这样大家在看问题回答的时候,可以有重点的查看。并且能够对最终的结果进行一个汇总和编辑,虽然采纳了某个人的答案,但是并不意味这最终的答案是属于这个人的,应该是集思广义,对最后的结果进行一个编辑汇总,这样的结果才是一个最佳的结果。
3,我一直不明白为什么提问题还要积分?用完积分不是就不能提了么?提的问题好应该给加分,但是同时如果这个问题没有任何意义,google一搜一堆结果,同样可以投反对票。
大家有什么好的建议可以一起提出来。我帮忙汇总下。
评论
16 楼
landslide
2011-01-14
baiyuxiong 写道
问答做的烂就不说了。有目共睹。
还有其它
不登录就没有收藏链接,登录后就跳转到首页了,找不到我要收藏的文章在哪里。
还有其它
不登录就没有收藏链接,登录后就跳转到首页了,找不到我要收藏的文章在哪里。
只要你想找怎么找不到,点两步后退再刷新,不是就看见了么...我倒是很不喜欢csdn那个跳回原来链接的东西,为毛让我等三秒啊
15 楼
orcl_zhang
2011-01-14
hideto 写道
问答产品要做好不是那么容易的, 不能希望JavaEye把重心都放在问答上,对吧?看JE的战略和野心了,以及和CSDN的关系/各自的侧重点。
http://hideto.iteye.com/blog/857049
我没有太高要求,只是有一点建议:1,对问题答案采纳后也能够进行编辑,并不难。
je怎么定位是肉饼的事情,我看不出来,我提了意见,执行不执行我就管了。
14 楼
麦蒂粉丝
2011-01-13
对,感觉个人还是比较喜欢Javaeye的界面和设计的,知识也更新的比较快.
13 楼
hideto
2011-01-13
问答产品要做好不是那么容易的, 不能希望JavaEye把重心都放在问答上,对吧?看JE的战略和野心了,以及和CSDN的关系/各自的侧重点。
12 楼
ddl1st
2011-01-12
那样做有那样的道理把。 我觉得用户体验还行。 相比其他的技术论坛来说。
11 楼
ddl1st
2011-01-12
成功的引起了一场口水仗。
10 楼
lqixv
2011-01-11
这个建议非常好,大家一起支持一下吧
9 楼
yangguo
2011-01-11
dsjt 写道
说实话je的用户体验太差了
1.登录后只跳转到首页;
2.验证用户是否登录用客户端验证
3.浏览帖子的页面没有发表新帖的链接
1.登录后只跳转到首页;
2.验证用户是否登录用客户端验证
3.浏览帖子的页面没有发表新帖的链接
太差你又跑来这里干什么呢?犯贱?去些体验好的地方吧。
8 楼
yangguo
2011-01-11
baiyuxiong 写道
问答做的烂就不说了。有目共睹。
还有其它
不登录就没有收藏链接,登录后就跳转到首页了,找不到我要收藏的文章在哪里。
还有其它
不登录就没有收藏链接,登录后就跳转到首页了,找不到我要收藏的文章在哪里。
这里好像没人要挽留你啊.你去做个不烂的吧。
7 楼
baiyuxiong
2011-01-11
问答做的烂就不说了。有目共睹。
还有其它
不登录就没有收藏链接,登录后就跳转到首页了,找不到我要收藏的文章在哪里。
还有其它
不登录就没有收藏链接,登录后就跳转到首页了,找不到我要收藏的文章在哪里。
6 楼
dsjt
2011-01-11
说实话je的用户体验太差了
1.登录后只跳转到首页;
2.验证用户是否登录用客户端验证
3.浏览帖子的页面没有发表新帖的链接
1.登录后只跳转到首页;
2.验证用户是否登录用客户端验证
3.浏览帖子的页面没有发表新帖的链接
5 楼
buyajun
2011-01-10
ywbanm 写道
JE的问答板块是挺奇怪的,只要采纳了或者过期的问题都不能编辑了,少了很多进一步交流的机会啊。
我觉得也不方便。
je 改一下 咯
4 楼
LikeEJB_CC
2011-01-10
自己写的一个 事务管理器 原理用的 观察者模式(其实一个List也可以搞定)
依靠JDK自带的观察者模式完成
依靠JDK自带的观察者模式完成
/** * 事务观察者 * @author CC */ public class TransactionObserver implements Observer { private Connection conn = null; public void update(Observable obs, Object obj) { try { if ("C".equals(obj)) { if(conn != null){ conn.commit(); } } else if ("R".equals(obj)) { if(conn != null){ conn.rollback(); } } } catch (SQLException e) { e.printStackTrace(); } } public void setConnection(Connection connObj) { this.conn = connObj; } }
/** * 被观察的事务 * @author CC */ public class TransactionObservable extends Observable { public void commit(){ this.setChanged(); this.notifyObservers("C"); } public void rollback(){ this.setChanged(); this.notifyObservers("R"); } }
//设置数据库连接对象事务 private TransactionObservable ooServer = null; TransactionObserver oo = new TransactionObserver(); Connection conn = XXXXXXXX; conn.setAutoCommit(false);// true or false oo.setConnection(conn); this.ooServer.addObserver(oo); //调用 try{ //自己加一个begin事务方法(也就是设置conn.setAutoCommit(false);// true or false) //XXX_1数据库操作 //XXX_2数据库操作 //XXX_3数据库操作 ooServer.commit(); }catch(Exception e){ ooServer.rollback(); }
3 楼
ywbanm
2011-01-09
JE的问答板块是挺奇怪的,只要采纳了或者过期的问题都不能编辑了,少了很多进一步交流的机会啊。
2 楼
tedeyang
2011-01-09
用了也不会错,只要你的数据库事务的传播级别设为PROPAGATION_REQUIRED,嵌套子事务会用最上面的那个transaction。
这个一般是默认值。
这个一般是默认值。
1 楼
night_stalker
2011-01-08
我错了……想改过来都不行了
发表评论
-
calendar
2012-02-24 11:04 875http://fullcalendar.vinsol.com/ ... -
ActiveRecord::Dirty
2011-11-21 10:29 787引用Track unsaved attribute chang ... -
TinyTDS
2011-09-20 09:29 858tiny_tds https://github.com/ra ... -
pandoc-ruby
2011-09-11 11:50 1207https://github.com/alphabetum/p ... -
Rails: Calling render() outside your Controllers
2011-04-28 17:15 832From:http://blog.choonkeat.com/ ... -
为什么这样才能装上
2011-02-20 10:39 1044引用u2@u2-laptop:~$ sudo gem inst ... -
Rails sql延迟加载和自带缓存
2010-12-30 01:11 1611color_lot_manuallies = color_lo ... -
关于rhtml
2010-12-23 00:26 870在视图里有这样一段代码 sorted_op_items = o ... -
will_paginate ajax
2010-11-26 13:21 912两种方法 一, @@pagination_options ... -
save > save!(转)
2010-11-19 19:57 754Thoughtbot folks have a great a ... -
USE INDEX with Active Record finders(转)
2010-11-18 22:07 891可以通过强制指定index的方法优化find MySQL do ... -
html转义
2010-11-17 23:03 954$("#contacts").html(& ... -
Rails HTTP Status Code to Symbol Mapping
2010-11-17 22:40 1623http状态码http://zh.wikipedia.org/ ... -
Scaling Rails很不错的视频
2010-09-29 18:10 823自从railscasts开始讲解rails3后就很久没看了。 ... -
ActionController源码(待续)
2010-09-20 15:14 1027/usr/local/lib/ruby/gems/1.8/ge ... -
rails源码ActionSupport(待续)
2010-08-31 16:59 934一些奇淫技巧 class Object # An ... -
动态的增加auto_complete
2010-08-30 12:17 895http://www.iteye.com/problems/3 ... -
rails 记录
2010-08-26 15:27 750代码里有这样一句 self.purchase_invoices ... -
用Array来实现OrderedHash
2010-08-18 14:29 915偶然发现电脑的角落里有这样的一段代码.功能是用Array实现的 ... -
rails源码ActiveSupport,待续
2010-08-18 14:10 884rails2.3.2 module ActiveSupport ...
相关推荐
setting.xml文件,修改Maven仓库指向至阿里仓
基于java的玉安农副产品销售系统的开题报告
dev-c++ 6.3版本
基于java的项目监管系统开题报告
基于springboot多彩吉安红色旅游网站源码数据库文档.zip
毕业设计&课设_基于 AFLFast 改进能量分配策略的毕业设计项目,含 Mix Schedule策略设计及测试结果分析.zip
基于springboot办公用品管理系统源码数据库文档.zip
C++调用qml对象Demo
非常漂亮的类Web界面的Delphi设计54ed7-main.zip
VB SQL车辆管理系统是一款基于Visual Basic(VB)编程语言和SQL数据库开发的综合车辆管理工具。该系统集成了车辆信息管理、驾驶员信息管理、车辆调度、维修记录、数据存储与检索、报告生成以及安全权限管理等多个核心功能模块。 源代码部分提供了详细的开发流程和实现方法,涵盖了从数据库设计、界面设计到事件驱动编程、数据访问技术和错误处理等关键技术点。通过该系统,用户可以方便地录入、查询、修改和删除车辆及驾驶员信息,实现车辆信息的实时更新和跟踪。同时,系统还支持生成各类车辆管理相关的报告,帮助用户更好地掌握车辆运营情况。 系统部分则采用了直观易用的用户界面设计,使得用户能够轻松上手并快速完成车辆管理工作。系统还具备强大的数据处理能力和安全性,通过数据备份和系统升级优化等功能,确保数据的完整性和系统的稳定运行。 总体而言,VB SQL车辆管理系统是一款功能全面、易于操作且安全可靠的车辆管理工具,适用于企业和个人进行日常车辆运营和管理。无论是车辆信息的录入、查询还是报告生成,该系统都能够提供高效、便捷的服务,是车辆管理工作的理想选择。
AutoSAR基础学习资源
基于springboot英语学习平台源码数据库文档.zip
数据集,深度学习,密封数据集,马体态数据集
基于java的数字家庭网站开题报告
podman使用国内源镜像加速器
基于springboot+web的留守儿童网站源码数据库文档.zip
基于springboot的智能宾馆预定系统源码数据库文档.zip
GetQzonehistory-main.zip
环境说明:开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7 数据库工具:Navicat 开发软件:eclipse/myeclipse/idea Maven包:Maven 浏览器:谷歌浏览器。 项目经过测试均可完美运行
内容概要:本文档详细介绍了QST公司生产的QMI8A01型号的6轴惯性测量单元的数据表及性能参数。主要内容包括设备特性、操作模式、接口标准(SPI、I2C与I3C),以及各种运动检测原理和技术规格。文中还提到了设备的工作温度范围宽广,内置的大容量FIFO可用于缓冲传感器数据,减少系统功耗。此外,对于器件的安装焊接指导亦有详细介绍。 适合人群:电子工程技术人员、嵌入式开发人员、硬件设计师等。 使用场景及目标:适用于需要精准测量物体空间位置变化的应用场合,如消费电子产品、智能穿戴设备、工业自动化等领域。帮助工程师快速掌握该款IMU的技术要点和应用场景。 其他说明:文档提供了详细的电气连接图表、封装尺寸图解等资料,方便用户进行电路板的设计制作。同时针对特定应用提出了一些优化建议。