Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony]zmiana domyślnych przycisków przy generowaniu crud
Forum PHP.pl > Forum > PHP > Frameworki
jakis_login
Witam
Utworzyłem sobie tabele w bazie danych i do tego stworzyłem sobie model i wygenerowałem sobie moduł CRUD do niej. Wszystko mi działa jak należy tylko mam problem z domyślnymi przyciskami np z przyciskiem do dodawania rekordu Create czy Delete - chciałbym zamieniać to oczywiście np na Utwórz czy Usuń itd. Doczytałem, że trzeba to robić w pliku generator.yml i wyszło mi coś takiego ale żaden sposób nie działa. Dlaczego? A może inaczej to się zmienia
  1. generator:
  2. class: sfPropelAdminGenerator
  3. param:
  4. model_class: Strony
  5. list:
  6. title: Lista stron
  7. display: [ id, opis_krotki, opis_pelny ]
  8. _create: Utworz
  9. actions:
  10. new: Dodaj
  11. object_actions:
  12. delete: Usuń
jaro87
Jeżeli już to coś w tym stylu kombinuj:
Kod
actions:
  _new: {label: Dodaj}
object_actions:
  _delete: {label: Usuń}

albo

Kod
actions:
  _new:
    label: Dodaj
object_actions:
  _delete:
    label: Usuń


A nie masz tam czasem już włączone i18n żeby dodać sobie tylko polskie tlumaczenie? snitch.gif
jakis_login
Żaden Twój sposób nie działa. Jeśli chodzi o i18n to mam coś takiego w settings.yml
  1. all:
  2. .settings:
  3. i18n: on
  4. default_culture: pl



i plik sf_admin.pl.xml w katalogu i18n/pl

Nic nie chce mi zaskoczyć.
jaro87
nie zapytam czy czyściłeś cache... ;p
jakis_login
czyszczę dla pewności za każdą zmianą ale dalej nic
jaro87
a, jednego poziomu zapomniałeś "config":

Kod
generator:
  class: sfPropelAdminGenerator
    param:
      model_class: Strony
      config:
          list:
          title: Lista stron
          display: [ id, opis_krotki, opis_pelny ]
          actions:
            _new: {label: Dodaj)
          object_actions:
            _delete: {label: Usuń}
jakis_login
Próbowałem już z config: ale też nic. Podejrzewam, że to jakiś głupi błąd tylko nie mogę go znaleźć. Może trzeba dodać jakąś funkcję gdzieś, może robię coś nie tak w jakimś pliku albo robię coś w nie właściwym pliku? A może dlatego, że robię to wszystko w wygenerowanym backendzie?
jaro87
No to jeszcze:
1. Sprawdz czy nie nadpisałeś partiala w templates.
2. Sprawdź czy nie nadpisałeś metody getListObjectActions() w lib/xGeneratorConfiguration.class.php
3. Poszukaj w cache tej metody getListObjectActions() w base xGeneratorConfiguration i zobacz co Ci generuje. Powinieneś mieć coś w stylu "return array( '_create' => array( 'label' => 'Nowy' ));"
4. Sprawdź czy nie zrobiłeś w configu za duzo/za mało spacji, w yamlu to ważne.
jakis_login
Nie mam takiego pliku lib/xGeneratorConfiguration.class.php w całym moim projekcie a metoda: getListObjectActions() jest w actionsConfiguration.php

  1. public function getListObjectActions()
  2. {
  3. return <?php echo $this->asPhp(isset($this->config['list']['object_actions']) ? $this->config['list']['object_actions'] : array('_edit' => null, '_delete' => null)) ?>;
  4. <?php unset($this->config['list']['object_actions']) ?>
  5. }


w cache też nie mam takiej metody

hmmm i co nikt nie miał wcześniej takiego problemu?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.