【问题标题】:Inheriting attributes in Machinist blueprints在 Machinist 蓝图中继承属性
【发布时间】:2011-03-02 18:13:52
【问题描述】:

使用 Machinist,是否可以通过某种方式定义蓝图,以便它们从其他蓝图继承属性?我查看了我找到的所有文档和示例,但我没有看到它发生。

我想做这样的事情:

User.blueprint do
    name
    email
end

User.blueprint(:admin) do
    is_admin { true }
end

User.blueprint(:editor) do
    is_editor { true }
    group
end

User.blueprint(:contributor) do
    is_editor { true }
end

它们都从第一个蓝图继承名称/电子邮件,而 :contibutor 蓝图从 :editor 蓝图继承 group 属性。

这可能吗?

【问题讨论】:

    标签: ruby testing machinist


    【解决方案1】:

    是的,这是部分可能的,至少对于机械师 1(我还没有尝试过机械师 2)。您只能从给定类的默认蓝图继承属性。

    您的语法是正确的,请参阅https://github.com/notahat/machinist/tree/1.0-maintenance 中的“命名蓝图”,但您的蓝图贡献者直接继承自默认用户蓝图。您必须在贡献者蓝图中手动设置组属性。

    创建管理员用户的语法是User.make(:admin)

    【讨论】:

    • 谢谢!当我查看文档时,我从未发现关于命名蓝图的那一点
    猜你喜欢
    • 2011-05-09
    • 1970-01-01
    • 2017-12-18
    • 2014-02-03
    • 1970-01-01
    • 2012-05-08
    • 2012-08-15
    • 2010-10-05
    • 1970-01-01
    相关资源
    最近更新 更多