如何指定动作的方法(类似于_delete):
generator:
config:
list:
object_actions:
myaction: {label: Label, action: myaction, method: post}
这会忽略我的方法设置并呈现一个获取链接:
<a href="/backend/myaction/1">Label</a>
我想要它的“post”链接,类似于_delete(带onclick属性)
答案 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;}" } }