首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Machinist + RSpec和保留字

Machinist + RSpec和保留字
EN

Stack Overflow用户
提问于 2011-08-23 15:52:21
回答 1查看 541关注 0票数 3

我有一个蓝图:

代码语言:javascript
复制
Model.blueprint(:something) do
  name "Some name"
  context "some context"
end

"context“是Model的一个属性,但它也是RSpec的保留字。当我尝试生成和对象时,我在"context“行得到了ArgumentError。

有什么办法可以克服这种情况吗?

EN

回答 1

Stack Overflow用户

发布于 2012-02-11 05:58:11

无法使用Machinist 2.0.0.beta2复制此文件。

Machinist的工作方式是覆盖method_missing?,然后根据这些参数分配属性。如果rspec以某种方式将context方法分配给Machinist的车床的对象,那么该方法将在method_missing?之前被调用。如果您仍然遇到此问题,可以在评估属性之前尝试使用remove_method :context

代码语言:javascript
复制
Model.blueprint(:something) do
  remove_method :context
  name "Some name"
  context "some context"
  alias_method :context, :describe
end

我不知道这是否有效,因为我不能在本地复制它,但我会试一试。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7157808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档