Ergebnis 1 bis 17 von 17

Thema: Application Resource Umstellung

  1. #1
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard Application Resource Umstellung

    Hallo,
    hab ja letztens wegen einer Mailimplementierung was nachgefragt und (ich glaub Dennis Becker wars) hat auf Application Resource verlinkt. Damit hatte ich bisher noch garnix zu tun gehabt und den Beschluss gefasst, das Projekt erstmal drauf umzustellen. Vor allem um die index.php etwas zu säubern.
    Also bootstrap.php, application.ini und index.php

    Erste Frage:
    PHP-Code:
    $route = new Zend_Controller_Router_Route(
            
    ':controller/:id/:action',
            array(
                
    'module' => 'public',
                
    'controller' => '',
                
    'id' => '\d+'
                
    )
            );
        
    $router->addRoute('general'$route); 
    Wie speichere ich die Route unter dieser Bezeichnung in der ini ab? Das wird ja auch in der Zend Doku nicht erwähnt. Ist dies gar nicht möglich?

    Weitere Fragen kommen noch...

    Danke


  • #2
    Erfahrener Benutzer
    Registriert seit
    28.12.2006
    Beiträge
    9.966
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Es wird erwähnt.
    Sowieso finden sich die Infos zu den vorhandenen Resource-Plugins eben dort und nicht bei den einzelnen Komponenten. Als Faustformel: Einfach so angeben, als würde man es dem Konstruktor der Komponente übergeben.

    Und was ist eine Mailusmetzung?!?

    Edit
    hab ja letztens wegen einer Mailimplementierung was nachgefragt
    Du Scherge


  • #3
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Danke.
    Dein erster Link geht nicht. Den zweiten kenne ich und da steht nix dazu... ich möchte halt dieses "general" mit angeben...

    Edit: achso dein erster Link ist der Teil einer URL... ähm aber da steht das auch nicht mit drin, sondern nur der Aufbau der URL.
    Geändert von cream (27.04.2010 um 22:58 Uhr)


  • #4
    Erfahrener Benutzer
    Registriert seit
    28.12.2006
    Beiträge
    9.966
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    http://framework.zend.com/manual/de/...sources.router
    Der müsste gehn und ja, das is tatsächlich die selbe Seite
    Das, was im Beispiel "route_id" genannt wird, ist deine "general".


  • #5
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Wahrscheinlich ist es heute shcon zu spät für mich...

    PHP-Code:
    resources.router.routes.route_id.route  "/login" 
    Das ist doch der URL Aufbau und nicht mein Routenname


  • #6
    Erfahrener Benutzer
    Registriert seit
    28.12.2006
    Beiträge
    9.966
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Zitat Zitat von cream
    Dein erster Link geht nicht. Den zweiten kenne ich und da steht nix dazu... ich möchte halt dieses "general" mit angeben...
    Zitat Zitat von KingCrunch
    Das, was im Beispiel "route_id" genannt wird, ist deine "general".
    Code:
     resources.router.routes.route_id.route  = "/login"
    Ja, eindeutig zu spät
    Zitat Zitat von cream
    Das ist doch der URL Aufbau und nicht mein Routenname
    Mal abgesehen davon, dass das nur eine einzelne Zeile aus der ganzen Konfiguration ist
    Zitat Zitat von cream
    PHP-Code:
    $route = new Zend_Controller_Router_Route(
            
    ':controller/:id/:action'// <--- Zeile 1 (route)
            
    array(
                
    'module' => 'public'// <--- Zeile 2 (defaults.module)
                
    'controller' => ''// <--- Zeile 3 (defaults.controller)
                
    'id' => '\d+' // Ergänzen Sie die Folge logisch :D
                
    )
            ); 
    Code:
    resources.router.routes.route_id.route = "/login"
    resources.router.routes.route_id.defaults.module = "user"
    resources.router.routes.route_id.defaults.controller = "login"
    resources.router.routes.route_id.defaults.action = "index"
    jetzt nur noch alles zusammen kleben, und schon hastes


  • #7
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Danke für deine Geduld, bin da die ganze Zeit von einem statischen Wert ausgegangen...


  • #8
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Leider werden meine Forms und Models noch nicht gefunden. Diese liegen in den standard /forms und /models ordnern unter /application.
    Vor der Umstellung hatte ich nur den Autolader drin (ohne Angabe von Namespaces) und die Pfade per set_include angegeben. Da funktionierte es. Wo haperts da noch?

    Hatte das Problem schonmal und ist nur eine kleine Sache aber mir fällts nicht ein...


  • #9
    Erfahrener Benutzer
    Registriert seit
    10.09.2007
    Ort
    Wuppertal
    Beiträge
    5.725
    Thanks
    1
    Thanked 39 Times in 39 Posts

    Standard

    Dem Autoloader muss man noch ein wenig auf die Sprünge helfen. Gehen wir mal von folgendem einfachen Verzeichnisbaum aus:
    Code:
    /application
        /controllers
        /forms
        /models
        /views
    Um nun auch Forms und Models nutzen zu können, gibt man in der application.ini einen Application Namespace an. Mittels Zend_Tool bei ZF 1.10.x sieht das dann so aus:
    Code:
    appnamespace = "Application"
    Wenn du dies so übernehmen würdest (der Namespace kann natürlich beliebeig geändert werden) müsstest du deine Forms wie folgt ansprechen:
    Code:
    /application
        /forms
            Login.php
    PHP-Code:
    <?php

    class Application_Form_Login extends Zend_Form
    {
        public function 
    init()
        {
        }
    }
    PHP-Code:
    $loginForm = new Application_Form_Login(); 
    Bei den Models funktioniert das dann natürlich genauso
    Neues Projekt: zandman.de - Status: WIP





  • #10
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Danke, puh dann hilft wohl nur noch alles umzubenennen

    Momentan (was beim Autoloader wunderbar klappte) heißen meine Models zum Beispiel DatabaseService ...überall mit anhang Service. Aber im normalen models Ordner. Das geht mti dem Namespace aber scheinbar nicht. Denn das hatte ich bereits probiert


  • #11
    Erfahrener Benutzer
    Registriert seit
    28.12.2006
    Beiträge
    9.966
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Service != Model, denn wie man hier sieht
    http://framework.zend.com/svn/framew...Autoloader.php
    haben Services ein eigenes Verzeichnis verdient


  • #12
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Ah ok... Das sind models aber haben im Namen halt immer noch den Teil Service.. keine Ahnugn warum ich damit angefangen habe. Als Anfänger kann man schlechte von guten Tutorials schwer unterscheiden.. vor allem bei Zend

    Aber gut dann werd ich das alles umbauen.


  • #13
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Hallo, was DennisBecker geschrieben hat: sicher dass dies so ist? Bei mir (ohne Namespace) funktioneirt das nämlich nicht.

    Gleiche Ordnerstruktur. Controllerdateien: "TestController.php" und Klasse "TestController" ...funktioniert!

    Models werden in gleicher Schreibweise oder auch in Dennis' Schreibweise nicht gefunden


  • #14
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    Hallo, entschuldigt meinen Monolog aber wenn ich auf "Edit" klicke, bemerkt sonst niemand meine Änderung.

    Biege gerade alles wieder hin. Hatte es mir irgendwie leichter vorgestellt

    Wenn ich nun in der application.ini die mail einstellungen eintrage (wie im manual), erhalte ich einige fehlermeldungen: include_once(smtp.php) failed to open stream. Hierbei wird dann auf Zeile 146 des Zend Loaders verwiesen. Mir ist jetzt einfach unklar warum es zu diesem Fehler kommt? Ist übrigens Zend 1.10.4
    Geändert von cream (30.04.2010 um 16:22 Uhr)


  • #15
    Erfahrener Benutzer Avatar von gingin
    Registriert seit
    03.02.2010
    Beiträge
    373
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    application.ini die mail einstellungen eintrage (wie im manual)
    poste mal wie Deine Einträge dort aussehen und wie Du sie aufrufst


  • #16
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Standard

    OK also die application.ini enthält: ("test" hab ich da als wert nur jetzt drin stehen fürs forum...)
    PHP-Code:
    resources.mail.transport.type smtp
    resources
    .mail.transport.host "test.com"
    resources.mail.transport.auth login
    resources
    .mail.transport.username noreply@test.com
    resources
    .mail.transport.password test
    resources
    .mail.transport.register true

    resources
    .mail.defaultFrom.email noreply@test.com
    resources
    .mail.defaultFrom.name "Test"
    resources.mail.defaultReplyTo.email test@test.com
    resources
    .mail.defaultReplyTo.name "Fehler" 
    Ansonsten hab ich nirgends im Code etwas zu Mail stehen... erhalte aber auf jeder Seite, folgende Meldung:
    Warning: include_once(smtp.php) [function.include-once]: failed to open stream: No such file or directory in C:\Programme\xampp\htdocs\Test\library\Zend\Loader .php on line 146

    Warning: include_once() [function.include]: Failed opening 'smtp.php' for inclusion (include_path='.;C:\Programme\xampp\htdocs\Test\ap plication/models/;C:\Programme\xampp\htdocs\Test\application/forms/;C:\Programme\xampp\htdocs\Test/library;.;C:\Programme\xampp\php\pear\') in C:\Programme\xampp\htdocs\Test\library\Zend\Loader.php on line 146

    Warning: include_once(Smtp.php) [function.include-once]: failed to open stream: No such file or directory in C:\Programme\xampp\htdocs\Test\library\Zend\Loader.php on line 146

    Warning: include_once() [function.include]: Failed opening 'Smtp.php' for inclusion (include_path='.;C:\Programme\xampp\htdocs\Test\ap plication/models/;C:\Programme\xampp\htdocs\Test\application/forms/;C:\Programme\xampp\htdocs\Test/library;.;C:\Programme\xampp\php\pear\') in C:\Programme\xampp\htdocs\Test\library\Zend\Loader.php on line 146
    Das wars... eine Idee?

    Andere Einstellungen wie Cache, Language, Database werden ja korrekt geladen.


  • #17
    Erfahrener Benutzer
    Registriert seit
    19.06.2009
    Beiträge
    120
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Pfeil

    So da wohl niemand eine Idee hat, hab ich heute nochmals Google angeworfen und folgendes gefunden: http://framework.zend.com/issues/browse/ZF-9802 bei mir tritt exakt das gleiche Verhalten auf... gebe ich Smtp komplett an, läufts...


  • Ähnliche Themen

    1. Umstellung Mysql zu DB2
      Von ZendNewbie im Forum DB
      Antworten: 8
      Letzter Beitrag: 29.01.2010, 15:01
    2. Zend Log - Resource
      Von ArneRie im Forum Core
      Antworten: 7
      Letzter Beitrag: 10.01.2010, 07:20
    3. Resource in application.ini aufrufen
      Von gerritlober im Forum Einsteigerfragen
      Antworten: 4
      Letzter Beitrag: 26.12.2009, 17:46
    4. Keine Sonderzeichen seit Umstellung auf Unicode
      Von Freeman4gu im Forum Einsteigerfragen
      Antworten: 2
      Letzter Beitrag: 15.11.2009, 14:45
    5. Controller <-> Resource?
      Von stun im Forum Einsteigerfragen
      Antworten: 5
      Letzter Beitrag: 03.05.2007, 02:01

    Lesezeichen

    Berechtigungen

    • Neue Themen erstellen: Nein
    • Themen beantworten: Nein
    • Anhänge hochladen: Nein
    • Beiträge bearbeiten: Nein
    •