Ankündigung

Einklappen
Keine Ankündigung bisher.

Symfony - generator.yml

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Symfony - generator.yml

    Moin,

    habe nun schon mehrere Fragen in den verschiedenen Symfony-Foren gepostet aber irgendwie erhält man da wohl keine Hilfe .

    Ich hoffe hier kann mir jemand helfen und zwar:

    1.
    Ich möchte den Reset-Button des Filters ändern ( in Zurücksetzen ).

    2.
    Würde ich gerne in den batch_actions das "Choose an action" ändern in "Aktion auswählen".

    3.
    Versuche ich nun schon seit 2 Stunden ein Icon einer Aktion zu ändern.
    Code:
      object_actions:
              reset:
                icon: /images/tick.png
                action: Test
                label: Test
    Das Bild liegt in:
    /web/images/tick.png

    Habe nun mehrere Sachen bei icon: ausprobiert aber irgendwie will das nicht klappen.

    Ich hoffe mir kann jemand diesbezüglich helfen.

    Würde das dann NOTFALLS mit css überschreiben. Aber sollte ja auch irgendwie anders gehen.
    4.
    Wird im Admin-Backend in einer Liste die "Catid" angezeigt, welche verschiedene Artikel einer Kategorie zuweisen soll.
    Ich würde aber lieber den Kategorienamen anzeigen.
    Beim erstellen eines Artikels macht er das selbst...

    Habe eine Funktion erstellt:
    PHP-Code:
    public function getCatName() {
            
    $q Doctrine_Query::create()->from("ShopCategory j")->fetchOne();
            return 
    $q;
        } 
    in der ShopArticles.class.php.
    Jedoch würde mir dort eine id fehlen und ich weiß nicht woher ich die bekomme

    Vielen Dank

    cu
    Grüße

    edit.: Punkt 4 nun gelöst
    display: [ shop_category ]

    Hat wohl eine __toString Funktion.

    Edit.:

    Leider ist diese Spalte nun nicht sortierbar.

    Wie kann ich das ändern *gg* ?
    "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]


  • #2
    Hehe, ein Fragen-Deja-vu meinerseits, das sind zum teil fragen die ich alle selbst vor etwas über 2 Monaten hatte

    Zitat von Destruction Beitrag anzeigen
    Ich hoffe hier kann mir jemand helfen und zwar:

    1.
    Ich möchte den Reset-Button des Filters ändern ( in Zurücksetzen ).

    2.
    Würde ich gerne in den batch_actions das "Choose an action" ändern in "Aktion auswählen".
    Hast du i18n aktiviert ?
    -> The symfony Reference Book | The settings.yml Configuration File | symfony | Web PHP Framework

    symfony-Cache + cookies löschen nicht vergessen [und einen browser mit ner de-locale verwenden]
    zusätzlich kann es sinnvoll sein die de-locale als default-culture zu setzen oder einen einfachen filter zu verwenden der automatisch jeden User auf de als culture setzt.

    ganz simpel:
    <?php

    class deFilter extends sfFilter
    {
    public function execute ($filterChain)
    {
    // Execute this filter only once
    if ($this->isFirstCall())
    {
    $this->getContext()->getUser()->setCulture('de');
    }
    $filterChain->execute();
    }
    }
    und passend in filters.yml registrieren:

    deFilter:
    class: deFilter
    3.
    Versuche ich nun schon seit 2 Stunden ein Icon einer Aktion zu ändern.
    Code:
      object_actions:
              reset:
                icon: /images/tick.png
                action: Test
                label: Test
    Geht imho NUR mit css, weil sämtliche standard-sachen auch darüber definiert sind.
    Sämtliche actions bekommen eine Klasse namens: sf_admin_action_%action%

    z.b. sieht das in der /sfDoctrinePlugin/css/default.css so aus:
    Code:
    #sf_admin_container ul li.sf_admin_action_edit a
    {
      background: url(../images/edit.png) no-repeat 0 0;
    }
    Die einzige Möglichkeit das via generator.yml zu machen, deinen eigenen generator (z.b. auf basis des standard-generators) + dazugehörige templates zu kopieren (kann man z.b. von sfDoctrinePlugin übernehmen) und dann dort von unten her anzufangen zu schauen wie wo kommen die konfigurationen an, wo könntest du das abgreifen in welchen generator-templates wird die batch-box erzeugt und das dann stück für stück erweitern.
    Aber wenn es dir nur um ein icon geht ist das wie mit Kanonen auf Spatzen zu schießen

    Das Bild liegt in:
    /web/images/tick.png

    Habe nun mehrere Sachen bei icon: ausprobiert aber irgendwie will das nicht klappen.
    Die doku kennt auch kein icon-option:
    -> The symfony Reference Book | The generator.yml Configuration File | symfony | Web PHP Framework

    4.
    ...

    Leider ist diese Spalte nun nicht sortierbar.

    Wie kann ich das ändern *gg* ?
    Ne "generische" Lösung dafür die automatisch relationen sortierbar und mit namen darstellt, steht bei mir noch auf der todo, aber erstmal mit niedriegerer prio, sobaldi ch das fertig hab sag ich dir bescheid wie man das lösen kann, da wird man allerdings für ne generische Lösung nicht ums erweitern der Generatoren rumkommen.

    Aber ein erster ansatzpunkte für eine nicht-generische Lösung wäre wohl das query anzupassen, nen left-join auf die relation zu machen, eine zusätzliche spalte im query die den namen den du haben willst repräsentiert und wenn die spalte im query auftaucht sollte sie imho auch angezeigt werden (ansonsten explizit über generator.yml listen) und sollte dann auch sortierbarsein, bin noch nciht durch den kompletten generator-kram durchgestiegen.

    Zum Thema query anpassen für den admin-generator:
    -> Symfony world: tips n'tricks about sf: Custom query for admin generator
    robo47.net - Blog, Codeschnipsel und mehr
    | Caching-Klassen und Opcode Caches in php | Robo47 Components - PHP Library extending Zend Framework

    Kommentar


    • #3
      Moin Robo,

      Erstmal vielen vielen Dank für deinen Post.

      Das hilft mit schon mal sehr weiter!

      Zu Punkt 4:

      Das habe ich gemacht über
      method_for_query: AllArticles
      Und dann in der ShopArticlesTable.class.php:

      PHP-Code:
      public function AllArticles(Doctrine_Query $q) {
              
      $alias $q->getRootAlias();
              
      $q->leftJoin($alias.".ShopCategory c");
              return 
      $q;
          } 
      Da gibts wohl leider noch Probleme. ( leider nicht sortierbar )

      Aber naja... das ist nun auch nicht "Super"-Wichtig. Bin schon mal froh wenn dass das so klappt.

      ahh ok das mit dem i18n kommt erst bei Day 19 ... ( bin gerade bei Day 16 beim Jobeet Tutorial).
      Da bin ich ja erleichtert dass es da eine einfache Lösung gibt. Danke dafür!

      Ich dachte ich könnte vllt den Inhalt via display in der generator.yml ändern aber das ging leider nicht
      Gibt es eine Möglichkeit diese Buttons ( Reset , go usw. ) auch manuell zu ändern bzw. ggf. auch zu entfernen !?

      Vielen Vielen Dank noch mal für deinen Post.

      hast mir sehr geholfen ( habe jetzt die default_culture in den Settings.yml sowie i18n aktiviert , klappt super ). Ist leider ( noch ) schwer richtige Hilfe für Symfony zu erhalten.

      The Definitive Guide to symfony | Chapter 14 - Admin Generator | symfony | Web PHP Framework

      habe das da gefunden mit dem "icon".
      list:
      title: List of Articles
      object_actions:
      _edit: -
      _delete: -
      addcomment: { name: Add a comment, action: addComment, icon: backend/addcomment.png }
      Was leider nicht ganz klappt ist das:

      Wünsche dir noch einen schönen Abend.

      MfG
      "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

      Kommentar


      • #4
        Was hat das mit Fortgeschritten zu tun?

        Kommentar


        • #5
          schon mal als Anfänger versucht solche Probleme in Angriff zu nehmen

          Kommentar


          • #6
            Zitat von phpsecretary Beitrag anzeigen
            Was hat das mit Fortgeschritten zu tun?
            Ach?
            Kannst du etwa alle Fragen beantworten ?
            "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

            Kommentar

            Lädt...
            X