小编Der*_*ley的帖子

rspec模拟:验证它的"应该"方法的期望?

我正在尝试使用rspec的模拟设置我可以在"应该"方法中验证的期望......但我不知道如何做到这一点......当我在模拟上调用.should_receive方法时,它在before:all方法退出时立即验证预期的调用.

这是一个小例子:

describe Foo, "when doing something" do
 before :all do
  Bar.should_recieve(:baz)
  foo = Foo.new
  foo.create_a_Bar_and_call_baz
 end

 it "should call the bar method" do
  # ??? what do i do here?
 end
end
Run Code Online (Sandbox Code Playgroud)

如何在"it"应该"'方法中验证预期的呼叫?我需要使用mocha或其他模拟框架而不是rspec吗?要么 ???

rspec mocking assertions

3
推荐指数
1
解决办法
4371
查看次数

logrotate表示在旋转日志/重新创建日志文件时拒绝权限

我是新手在linux机器上进行logrotate ...这是我在我的应用程序的logrotate.d文件中设置的内容:

/var/log/myapp.log {
daily
missingok
create 0660 root utmp
rotate 1
}
Run Code Online (Sandbox Code Playgroud)

我使用chmod直接从bash shell为mypro.log文件设置了运行相关应用程序的帐户的所有者权限.

当应用程序第一次运行时,一切都很好.它记录得很好,一切都很好.但是当日志轮换时,它会删除日志文件,然后尝试重新创建日志文件,并提供权限被拒绝错误:

/bin/bash: /var/log/myapp.log: Permission denied
Run Code Online (Sandbox Code Playgroud)

我知道我在使用logrotate配置文件或chmod或其他东西时出错了...有人能指出我正确的方向并帮我解决问题吗?

linux file-permissions logrotate chmod permission-denied

3
推荐指数
1
解决办法
1万
查看次数

Backbone Marionette onBeforeClose和过渡

我从昨天开始就是Backbone Marionette的新手,我想知道是否有人试图在视图之间实现一些奇特的转换.

实际上,我想在渲染下一个视图之前淡出当前视图.我在onBeforeClose回调中执行此操作,但这不能正常工作,因为在我当前视图完成转换之前,下一个视图渲染...

有小费吗?

谢谢

javascript backbone.js marionette

3
推荐指数
1
解决办法
2501
查看次数

Ruby:写入文件时自动引用字符串,而不是其他数据?

我正在写一个小数据库,将数据写入文件.一些数据是字符串,其中一些不是 - 像boolean(true/false)值...

当我有一个数据字符串时,我想用字符串将字符串写入文件.所以像"这是一串数据"这样的字符串将被写入文件,并带有引号.

当我有其他类型的数据,如布尔值,我想写一个布尔值到文件没有引号.所以,false会写成假的 - 没有引号.

有没有办法在写入文件时自动引用/不引用变量的值,具体取决于保存值的变量是否为字符串?

ruby

2
推荐指数
1
解决办法
460
查看次数

正确配置主干Marionette中父子关系的路由器

尝试创建一个允许用户添加编辑和查看父子组合的页面.

UI有3列父母:父母列表儿童:儿童

我想配置控制器,以便用户可以回到他们原来的位置,但是看不需要它,所以父和子都可以编辑.

//使用骨干牵线木偶越来越近但仍然有一些小问题

    MyRouter = Backbone.Marionette.AppRouter.extend({
        appRoutes: {
            '': 'AddClient',
            'View/:clientid': 'ViewClient',
            'Edit/:clientid': 'EditClient',
            'View/:clientid/Add': 'PolicyAdd',
            'View/:clientid/View/:policyid': 'PolicyView',
            'View/:clientid/Edit/:policyid': 'PolicyEdit'
        }
    });

    someController = {
        AddClient: function () {
            var someView = new ClientAdd();
            MyApp.clientPane.show(someView);
        },
        ViewClient: function (clientid) {
            var someView = new ClientView();
            MyApp.clientPane.show(someView);
        },
        EditClient: function (clientid) {
            var someView = new ClientEdit();
            MyApp.clientPane.show(someView);
        },
        PolicyAdd: function (clientid) {
            this.ViewClient(clientid);
            var someView = new PolicyAdd();
            MyApp.policyPane.show(someView);
        },
        PolicyView: function (clientid, policyid) {
            this.ViewClient(clientid);
            var someView = …
Run Code Online (Sandbox Code Playgroud)

backbone.js marionette

1
推荐指数
1
解决办法
1757
查看次数

骨干 - 复选框保持检查状态?

我正在尝试将一个复选框连接到我的视图,但是只要我勾选它,它就会保持检查状态,即使我再次单击它也是如此?

这是视图的一部分:

views.PaginatedView = Backbone.View.extend({
    events: {
        'click input.completedEnquiries': 'filterCompletedEnquiries'
    },
    filterCompletedEnquiries: function (e) {
        return e.currentTarget.checked;
    }
});
Run Code Online (Sandbox Code Playgroud)

继承人的模板:

<label>Show Completed: <input type="checkbox" class="completedEnquiries" /></label>
Run Code Online (Sandbox Code Playgroud)

我不知道我在这里做错了什么?

编辑

这是问题的解答:http://jsfiddle.net/9cvVv/167/

javascript jquery dom dom-events backbone.js

1
推荐指数
1
解决办法
7640
查看次数

Ruby UUID和唯一性,用于ID

我需要一个6字符的字母数字ID,用于我的rails应用程序,它将呈现给系统的用户,并且在我的系统中的所有对象实例中必须是唯一的.我不指望超过几千个对象实例,所以6个字符远远超过我真正需要的.

此时我在我的Rails应用程序中使用UUIDTools gem来生成一个uuid.我应该使用哪种UUIDTools生成方法,以及结果uuid的哪一端应该从中获取6个字符,以保证唯一性?

例如,如果我生成ef1cf087-95c9-4868-bd95-cea950a52b58,我想ef1cf0从它的前面使用,还是a52b58从后端使用?

......作为旁注/问题:我是不是错了?有没有更好的办法?

ruby uuid uniqueidentifier

0
推荐指数
1
解决办法
1967
查看次数

主干牵线木偶复合视图不发射事件

这是我正在创建树结构的代码compositeView片段.

var TreeView = Backbone.Marionette.CompositeView.extend({

    template: "#filterTemplate",
    className:"menuItem",
    tagName: "ul",

    initialize: function(){
      this.collection = this.model.type;
        counter=0;
    },

    events: {
        'click .menuItem': 'show'
    },

    show: function(event) {
        var target = $(event.target);
        console.log(target);

    },

    appendHtml: function(collectionView, itemView){
        // ensure we nest the child list inside of 
        // the current list item
        $(itemView.el).attr("id","innerMenu"+counter);
        $(itemView.el).attr("class","innerMenu");
        collectionView.$("li:first").append(itemView.el);
        counter++;
    }
});
Run Code Online (Sandbox Code Playgroud)

树变得完美但事件没有被绑定或没有被触发.永远不会调用Show方法.我正在使用Backbone.Marionette v0.9.1

backbone.js marionette

0
推荐指数
1
解决办法
2943
查看次数