小编Ste*_*eve的帖子

如何通过cron作业执行Node.js脚本?

很简单,我有一个节点脚本,我想每个月执行一次.

30 6 1 * * node /home/steve/example/script.js
Run Code Online (Sandbox Code Playgroud)

但这不起作用,大概是因为命令正在运行的路径或shell.我尝试了以下通过cron执行节点的方法(使用-v测试):

steve@atom:~$ node -v
v0.4.2

steve@atom:~$ sh node -v
sh: Can't open node

steve@atom:~$ bash node -v
/usr/local/bin/node: /usr/local/bin/node: cannot execute binary file

steve@atom:~$ /usr/local/bin/node -v
v0.4.2

steve@atom:~$ sh /usr/local/bin/node -v
/usr/local/bin/node: 1: Syntax error: "(" unexpected

steve@atom:~$ bash /usr/local/bin/node -v
/usr/local/bin/node: /usr/local/bin/node: cannot execute binary file
Run Code Online (Sandbox Code Playgroud)

我已经没有想法尝试,任何建议?

cron crontab node.js

50
推荐指数
6
解决办法
6万
查看次数

如何在Jinja扩展中解析和注入其他节点?

我正在尝试调整Jinja2 WithExtension以生成包含块的通用扩展(后面是一些更复杂的扩展).

我的目标是在模板中支持以下内容:

{% wrap template='wrapper.html.j2' ... %}
    <img src="{{ url('image:thumbnail' ... }}">
{% endwrap %}
Run Code Online (Sandbox Code Playgroud)

并且对于wrapper.html.j2看起来像:

<div>
    some ifs and stuff
    {{ content }}
    more ifs and stuff
</div>
Run Code Online (Sandbox Code Playgroud)

我相信我的例子大部分都在那里,WithExtension似乎解析了块,然后将一些{% assign .. %}节点的AST表示附加到它正在解析的节点的上下文中.

所以我想我想要相同的东西,那些赋值,然后是一个include块,我希望能够在解析AST时访问这些变量,并传递包装为变量的块content.

到目前为止我有以下内容:

class WrapExtension(Extension):
    tags = set(['wrap'])

    def parse(self, parser):
        node = nodes.Scope(lineno=next(parser.stream).lineno)
        assignments = []
        while parser.stream.current.type != 'block_end':
            lineno = parser.stream.current.lineno
            if assignments:
                parser.stream.expect('comma')
            target = parser.parse_assign_target()
            parser.stream.expect('assign')
            expr = parser.parse_expression()
            assignments.append(nodes.Assign(target, expr, lineno=lineno))
        content = parser.parse_statements(('name:endwrap',), drop_needle=True)
        assignments.append(nodes.Name('content', …
Run Code Online (Sandbox Code Playgroud)

python django jinja2 python-2.7 django-1.6

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

如何向集合中添加违规?

我的表单看起来像这样:

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $factory = $builder->getFormFactory();

    $builder->add('name');

    $builder->add('description');

    $builder->add('manufacturers', null, array(
        'required' => false
    ));

    $builder->add('departments', 'collection', array(
        'type' => new Department
    ));
}
Run Code Online (Sandbox Code Playgroud)

我在表单所代表的实体上有一个类验证器,它调用:

    if (!$valid) {
        $this->context->addViolationAtSubPath('departments', $constraint->message);
    }
Run Code Online (Sandbox Code Playgroud)

这只会在表单中添加"全局"错误,而不会在子路径中添加错误.我假设这是因为departments是嵌入另一个FormType的集合.

如果我改为departments其他字段之一,它可以正常工作.

如何才能将此错误显示在正确的位置?我假设如果我的错误是在集合中的单个实体上,并因此以子表单形式呈现,它将正常工作,但我的标准是如果集合中没有任何实体被标记为活动,则会发生违规,因此它需要在父母一级.

symfony-forms symfony-2.1

10
推荐指数
2
解决办法
7412
查看次数

是否有更智能的方法来禁用Symfony2.1中的Doctrine2过滤器?

我正在使用Gedmo Doctrine Extensions,例如SoftDeletable,并且在各个点我需要禁用此过滤器,以便用户可以与软删除的实体或实体的软删除关系进行交互.

这包括但不限于一次在控制器中并且再次在SonataAdmin的特定区域中.

到目前为止,我发现的解决方案是在em上调用getFilters()并禁用softdeleteable,这很好.

然而,两个奏鸣曲管理类和控制器似乎都经历了多次执行,这导致致命的尝试禁用已经禁用的过滤器,所以我必须这样做:

    if (array_key_exists('softdeleteable', $this->em->getFilters()->getEnabledFilters())) {
        $this->em->getFilters()->disable('softdeleteable');
    }
Run Code Online (Sandbox Code Playgroud)

至少可以说这看起来很糟糕.

但是,还有其他问题,例如命令的范围.我还没有发现任何前端问题,但在管理员中,多次执行,其中一个是构建导航(我认为)意味着过滤器始终被禁用,并且只能直接在em上执行此操作在我看来,只要我不想在后端某处禁用该功能,它就会导致一大堆问题.

有没有更好的方法呢?

symfony-forms symfony doctrine-orm symfony-2.1

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

如何在浏览器中进行视频捕获?

理想情况下,我最初寻找的是HTML5 Media Capture API的实现,其中polyfill回滚到Flash,但是,我的研究得出结论,API尚处于起步阶段,尚未被任何主要供应商采用除此之外,Flash意味着做我需要的东西似乎很少.

我需要能够从摄像头拍摄网络摄像头,显示实时预览,录制和播放录制内容,仅此而已,无需上传到服务器,所有本地.

有没有像样的Flash解决方案?或其他方法实现这一目标?

我发现了很多对Red5的引用,澄清一下,是否会引用这个:http://www.red5-recorder.com?这真的是使用的工具还是有更好的选择?

javascript flash webcam html5 html5-video

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

如何基于关系实现Doctrine2过滤器?

我有一个Doctrine2监听器和过滤器,可以过滤掉任何未经批准的/草案实体,它可以在应用它的实体上正常工作,但是,我不知道如何使它适用于它的关系.

让我们说实体被称为类别,然后我有与该类别相关的产品,当我findBy()为产品做一个时,我需要查询来检查它们所涉及的类别是否被批准.

select * from products p
left join category c on p.category_id = c.id
where p.id = 5 and c.approved = true

粗体位是需要由我的过滤器或等效物注入的.

我该如何实现呢?

到目前为止,我有一个子查询作为过滤器中的一部分注入,但这似乎是地狱般的,我认为必须有一个更好的方法:

class ApprovableFilter extends SQLFilter
{
    protected $listener;
    protected $entityManager;

    public function addFilterConstraint(ClassMetadata $targetEntity, $targetTableAlias)
    {
        $config = $this->getListener()->getConfiguration($this->getEntityManager(), $targetEntity->name);

        /* this bit works fine for the category */

        if (isset($config['approvable']) && $config['approvable']) {
            $column = $targetEntity->columnNames[$config['fieldName']];

            return $targetTableAlias.'.'.$column.' = true';
        }

        /* this bit works for products.. but seems like a pretty …
Run Code Online (Sandbox Code Playgroud)

php symfony doctrine-orm symfony-2.1

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

是否可以在SASS中为某种元素类型的父母设置样式?

我想做这个:

.classname {
  color: red

  a& {
    color: blue;
  }
}
Run Code Online (Sandbox Code Playgroud)

并将其编译为:

.classname {
   color: red;
}

a.classname {
   color: blue;
}
Run Code Online (Sandbox Code Playgroud)

有可用的语法来支持这个吗?我已经尝试使用a&,#{a&}和指南针功能#{append-selector("a", "&")},但他们不编译,a &确实,但结果很明显,在a .classname不是a.classname.

css sass compass-sass

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

有没有办法获取传递给Sass mixin的参数数组?

各种新的CSS3属性接受无限的值集,即box-shadow背景渐变.

box-shadow为例,理想的情况是应该能够做到:

@include box-shadow(10px 15px 10px #FF0000, 15px 10px 10px #0000FF);
Run Code Online (Sandbox Code Playgroud)

尽可能多的参数.问题是Sass需要一个确定数量的参数,即使它没有,我知道没有办法循环它们.

到目前为止,我能想到的最好的混合方式是这样的:

@mixin box-shadow($v1: 0 0 10px #CCC, $v2: "", $v3: "", $v4: "", $v5: "") {
  @if $v5 != "" {
    -webkit-box-shadow: $v1, $v2, $v3, $v4, $v5;
    -moz-box-shadow: $v1, $v2, $v3, $v4, $v5;
    -o-box-shadow: $v1, $v2, $v3, $v4, $v5;
    box-shadow: $v1, $v2, $v3, $v4, $v5;
  } @else if $v4 != "" {
    ...
  } @else {
    -webkit-box-shadow: $v1;
    -moz-box-shadow: $v1;
    -o-box-shadow: $v1;
    box-shadow: $v1; …
Run Code Online (Sandbox Code Playgroud)

css sass mixins css3

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