symfony / propel: проблема при попытке добавить новое действие объекта в бэкэнд-модуль - PullRequest
0 голосов
/ 23 декабря 2010

Я создал эту модель:

propel:
  shop_orders:
    orders_id: { phpName: Id, type: INTEGER, size: '11', primaryKey: true, autoIncrement: true, required: true }
    email: { type: VARCHAR, size: '45', required: true }

Затем я сгенерировал модуль администратора и добавил это ниже в generator.yml:

config:
  actions: ~
  fields:  ~
  list:
    object_actions:
      foo: {}

Когда я нажимаю на действие foo, оно генерирует этот URL:

backend_dev.php / sp1 / ListFoo / действие? ID = 1

и я получаю это сообщение:

Действие "sp1 / action" не существует.

SF 1.4 / Propel

Есть идеи?

Хавьер

Ответы [ 3 ]

1 голос
/ 24 мая 2011

У меня была такая же проблема с пропелем 1.5.Попытался исправить это, добавив правила маршрутизации и т. Д. Но, похоже, сработало просто добавление одинарных кавычек вокруг имени действия в generator.yml:

list: object_actions: foo: module: foo action: 'Действие '

0 голосов
/ 04 января 2011

Мир Я решил эту ошибку, загрузив стабильную версию Symfony и восстановив новый бэкэнд в тот момент, когда вы можете выполнить «копирование / вставку», чтобы обновить ваш бэкэнд до старого бэкэнда Удачи

0 голосов
/ 23 декабря 2010

перед моим ответом я сам получил пару вопросов.Что, где вы пытаетесь сделать с этим:

config:
  actions: ~
  fields:  ~
  list:
    object_actions:
      foo: {}

Я думаю, что должно быть что-то вроде:

config:
  actions: ~
  fields:  ~
  list:
    object_actions:
      foo:
        module: foo
        action: action_name

Теперь, вернемся к вашему вопросу, сгенерированная ссылка получается из частично расположенныхв теме генератора.Вы можете найти его по адресу: generator > sfPropelGenerator > theme_name > template > templates > _list_actions.php

там вы можете найти код, который выглядит следующим образом:

[....]
<li class="sf_admin_action_<?php echo $params['class_suffix'] ?>">
  <?php echo $this->addCredentialCondition($this->getLinkToAction($name, $params, false), $params)."\n" ?>
</li>
[....]

Я предполагаю, что когда вы определили новую object_action, getLinkToAction получила некоторые значения по умолчанию в$ params.

Попробуйте изменить ваш generator.yml, очистить кеш и проверить его снова.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...