Symfony管理生成器 - 用于保存和返回列表的按钮

pro*_*ngs 7 php symfony1 symfony-1.4 admin-generator symfony-forms

如何在视图中添加保存和返回列表按钮以创建新记录?一般来说,我想要更多的按钮,所以我正在寻找一个通用的答案.

编辑:默认生成器为我提供了两个按钮:

  1. 保存
  2. 保存并添加

我想要一个按钮saves and takes me back to the list.而且我还想要一个带有自定义动作的自定义按钮.

让我解释一下实际情况:

我有一个列表操作create,将我带到一个具有一些输入字段的表单.现在我想使用这些字段的数据制作图像.我想在表单的右侧将此图像显示为预览.为此我需要一个预览按钮,这样无论何时按下,它都会将数据提交给自己进行预览和进一步修改.

我希望现在更清楚了.

mac*_*ver 8

您首先要添加generator.yml自己的save_and_back_to_list和其他自定义my_other_action操作:

    config:
      actions: ~
      fields:  ~
      list:    ~
      filter:  ~
      form:    ~
      edit:
        actions:
          _save: ~
          _list: ~
          save_and_back_to_list: ~
          my_other_action: ~
      new:
        actions:
          _save: ~
          _save_and_add: ~
          _list: ~
          save_and_back_to_list: ~
          my_other_action: ~
Run Code Online (Sandbox Code Playgroud)

然后,您必须添加自定义帮助函数以创建按钮 /apps/myapplication/modules/mymodule/lib/mymoduleGeneratorHelper.class.php

  public function linkToSaveAndBackToList($object, $params)
  {
    return '<li class="sf_admin_action_save_and_back_to_list"><input type="submit" value="'.__($params['label'], array(), 'sf_admin').'" name="save_and_back_to_list" /></li>';
  }

  public function linkToMyOtherAction($object, $params)
  {
    return '<li class="sf_admin_action_my_other_action"><input type="submit" value="'.__($params['label'], array(), 'sf_admin').'" name="my_other_action" /></li>';
  }
Run Code Online (Sandbox Code Playgroud)

现在你得到两个提交按钮NewEdit形式.

最后,您必须覆盖processForm(sfWebRequest $request, sfForm $form)可以找到的功能/cache/dev/modules/autoMymodule/actions/actions.class.php,以管理新的提交操作.我想你的create功能会覆盖管理生成器.

我希望我什么都不会忘记.