Symfony generator.yml链接方法

时间:2010-12-22 13:36:52

标签: symfony1 admin-generator

如何指定动作的方法(类似于_delete):

generator:
  config:
    list:
      object_actions:
        myaction: {label: Label, action: myaction, method: post}

这会忽略我的方法设置并呈现一个获取链接:

<a href="/backend/myaction/1">Label</a>

我想要它的“post”链接,类似于_delete(带onclick属性)

3 个答案:

答案 0 :(得分:2)

我猜你使用的是Propel。

如果检查生成器代码,特别是:generator&gt; theme_name&gt;模板&gt;模板&gt; _list_td_actions.php,你会发现一些代码:

<?php else: ?>
    <li class="sf_admin_action_<?php echo $params['class_suffix'] ?>">
      <?php echo $this->addCredentialCondition($this->getLinkToAction($name, $params, true), $params) ?>

    </li>
<?php endif; ?>

这是您定义自定义对象操作时执行的代码,就像您描述的那样。检查$ params,您可以找到满足您需求的解决方案(我认为可能您可以定义类似onclick属性值的内容)。

答案 1 :(得分:2)

如果您只想获得确认消息,可能最好的方法是:

generator:
  config:
    list:
      object_actions:
        myaction: {label: Label, action: myaction, confirm: "Are your sure?", params: {onclick: 'alert("Bu!");'} }

link_to的其他参数可以使用'params'选项传递(在上面的例子中注意'onclick')。

答案 2 :(得分:0)

也许这会很有用

generator:
  config:
    list:
      object_actions:
        myaction:{ params: { onclick : "if(confirm('Are you sure?')){return true;}else{return false;}" } }