今天执行一个页面的的时候发现日志输出了50行的"==> Got Users::User from cache. (0.00000)",觉得很奇怪,没有请求这么多次user啊,分析到后面发现原来是gettext跟cache_fu着两个插件的冲突引起的
他们的方法都是mixin到model中调用,都有一个cache?的方法,gettext的是判断是否cache i18n message,cache_fu的是判断是否cache model,结果gettext的cache?被cache_fu的cache?覆盖了,gettext内部调用了多次cache?就出现了上述的症状,虽然执行结果正常,但背后的行为跟期望的已经是大相径庭了,而且这样的情况还无法通过test来检查,这里要不是默认打开cache_fu的benchmark,根本就不知道问题所在
这样用mixin的时候都要小心了,不知道还有多少隐患,估计ruby以后应该会有相应的解决方案,例如在mixin的时候检查同名方法并产生警告
也给一个写module的建议,只暴露必要的方法,内部的调用还是用一个专有namespace分开
分享到:
- 2008-04-29 12:11
- 浏览 2151
- 评论(5)
- 论坛回复 / 浏览 (5 / 3018)
- 查看更多
相关推荐
modernizr-mixin, 在Sass中,针对测试的简单而全面的mixin hardwarebutton混合 一种简单的DRYier测试方法,在Sass中更快更。安装要求 ruby 3.4或者 LibSass 3.2Libsass警告:在 Libsass 3.2.3中有一个已知 Bug,它...
dry-configurable, 一个简单的mixin使 ruby 类可以配置 干可以配置 概要class App extend Dry::Configurable # Pass a block for nested configuration (works to any
MIXIN是使用ASM的Java的特性/混合框架
mixin是一个闪电交易快速的点点对的数字交道项目,它拥有非常好的技术栈。
ruby-destroyed_at, 用于安全销毁的ActiveRecord Mixin DestroyedAt 查找帮助?如果是一个 Bug ,请在GitHub上打开一个问题。安装将 destroyed_at gem 添加到 Gemfilegem 'destroyed_at'你可以在每个模块中
A Swift mixin for UITableViewCells and UICollectionViewCells.zip,A Swift mixin for reusing views easily and in a type-safe way (UITableViewCells, UICollectionViewCells, custom UIViews, ViewControllers...
y-mixin 是来自阅文前端团队的 CSS 预处理器 mixin 库
小程序 mixin 混入, Page 选项合并
gem 'mixin_bot' 或者 gem install mixin_bot 用法 初始化参数 要使用MixinBot api,您应该先设置密钥。 MixinBot . client_id = '25696f85-b7b4-4509-8c3f-2684a8fc4a2a' MixinBot . client_secret = 'd9dc58107...
资源分类:Python库 所属语言:Python 资源全名:colcon_mixin-0.1.3-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
混合Mixin BFT-DAG网络参考实现,受信任的执行环境尚未集成到此存储库中。开始使用按照此指南安装golang并设置GOPATH 。 $ git clone https://github.com/MixinNetwork/mixin.git$ cd mixin$ go build mixin命令既是...
Mixin.js Mixin是将功能重复混合到原型JavaScript类中的简便方法。 它会自动处理覆盖的原型方法和调用构造函数的组合。 而且,它将通知已混合到另一个类中的混合构造函数。 这可用于构造依赖的混合层次结构。 安装 ...
ruby语法基础教程,比较全的。 目 录 Ruby语言 1 Grant Ren 1 第一部分 Ruby语言基础 8 第一章 Ruby语言概述 8 §1.1 Ruby的历史 8 §1.2 Ruby名字的由来 8 §1.3 Ruby的特点 8 §1.4 Ruby和Python的比较 9 第二章...
花见::验证Ruby对象的验证混合状态联系主页: : 社区: : 指南: : 邮件列表: : API文件: : 错误/问题: : 支持: : 聊天: : RubyHanami :: Validations支持Ruby(MRI)2.3+和JRuby 9.1.5.0+。...
需要Ruby Sass 3.4或LibSass 3.2 LIBSASS警告:Libsass 3.2.3至3.2.5中存在一个已知的错误,该错误使Modernizr mixin输出错误的选择器。 在下一个Libsass版本中修复该错误之前,唯一的解决方法是坚持使用Libsass ...
#react-validate-mixin npm install react-validate-mixin或者 bower install react-validate-mixin##例子 var validate = require ( 'react-validate-mixin' ) ;var Compoent = React . createClass ( { mixins ...
面向Porter的Docker Compose Mixin 这是Porter的一个混合模块,提供了Docker Compose(docker-compose)CLI。混合声明要在捆绑包中使用此mixin,请这样声明: mixins :- docker-compose必需的扩展名要声明运行该包...
Mixin Client Java SDK这里是 Mixin Client Java SDK,其它语言的 Mixin SDK:NodeJS:Go:Python:更多 Mixin 开发资源:mixin_dev_resource:MiXin_Player:Java SDK v0.2当前版本 v0.2,主要功能是 Mixin 机器人:...
伪造混合素的例子 在Minecraft Forge中使用Mixin的示例