Ich laufe Symfony 1.3.6 auf Ubuntu 10.0.4 LTS.
Ich habe eine Symfony-Aufgabe geschrieben, die einen Bericht generiert, der Links (URLs) enthält.
Hier ist ein Ausschnitt der Methode execute()
in meiner Aufgabenklasse:
Der Routenname ist wie folgt definiert:
%Vor%Wenn dies ausgeführt wird, lautet die generierte Verknüpfung:
Zeile 1 erzeugt diese Ausgabe:
./ symfony / symfony / etwas / Phantasie / Pfad / marymoo / 42 / hello.html
anstelle der erwarteten:
/some/fancy/path/marymoo/42/hello.html
Zeile 2 erzeugt einen Fehler:
Es konnte keine passende Route gefunden werden generiere URL für params "array ( 'Aktion' = & gt; 'symfony', 'Modul' = & gt; ".",) ".
Auch hier ist die erwartete URL:
/some/fancy/path/marymoo/42/hello.html
Wie kann ich das beheben?
Um eine URL in einer Aufgabe zu generieren:
%Vor%Wir fügen eine Methode hinzu, um das Routing zu generieren, so dass die Produktions-URL immer verwendet wird:
%Vor%Ich möchte Standard-Helfer (wie url_for) verwenden, um URL zu generieren, vielleicht könnte dieser Code Ihnen helfen:
%Vor%Dann können Sie die Funktion url_for überall verwenden , wobei der Parameter absolute = true magisch funktioniert.
Natürlich müssen Sie eine * url_base * -Definition in Ihrer app.yml hinzufügen (oder Sie können sie mit einem Häkchen versehen lassen)
Sie können Standardanforderungsoptionen für Befehle (sfTask) im Projektkonfigurationsskript config/ProjectConfiguration.class.php
Tags und Links symfony1 symfony-1.4