Dinlenme ve modüller hakkında Zend framework soru

0 Cevap php

Adamlar benim projede aşağıdaki yapıya sahiptir.

application/
   Bootstrap.php
   configs/
      application.ini
   modules/
      default/
         controllers/
         models/
         views/
         Bootstrap.php
      main/
         controllers/
            UserController.php
         forms/
         models/
            resources/
            validate/
         views/
            scripts/
               user/
                  complete-registration.phtml
                  index.phtml
                  register.phtml   
         Bootstrap.php
      rest/
         controllers/
            LoginController.php
         models/
         views/
         Bootstrap.php

Şimdi soruna. Ben erişmek için cant UserController.php içinde birkaç eylemleri tanımlamıştır. Için, örneğin ben kayıt / / ana / kullanıcı Localhost'a giderseniz ben bu erişim olamaz. Ancak ben o inşaat / ana / kullanıcı Localhost'a göz atın.

Ben ne olabilir hiçbir fikrim yok ama benim vahşi tahminim benim bootstrap.php ile yapılacak olan bir şeydir. While debugging I commented the rest route initialize in the main bootstrap.php and it seemed to work. Ben bu etkilenen düşünüyorum tüm dosyaları verdik. Ben ne olabilir biliyor eğer bu harika olurdu. Zaten bu anlamaya çalışıyorum birkaç gün gibi geçirdim.

Bootstrap.php

<?php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    // Commenting this seems to make the module auto initializing work.
    protected function _initRestRoute()
    {
        $this->_logger->info('Bootstrap ' . __METHOD__);
        $this->bootstrap ( 'frontController' );
        $frontController = Zend_Controller_Front::getInstance ();
        //$restRoute = new Zend_Rest_Route ( $frontController );
        //$frontController->getRouter ()->addRoute ( 'default', $restRoute );
        $restRoute = new Zend_Rest_Route($frontController, array(), array('rest'));
        $frontController->getRouter ()->addRoute('rest', $restRoute);
    }
}

Main/Bootstrap.php

<?php

class Main_Bootstrap extends Zend_Application_Module_Bootstrap
{

}

Main/controllers/UserController.php

<?php

class Main_UserController extends Zend_Controller_Action
{

    protected $_model;

    public function init()
    {
        // Get the default model
        $this->_model = new Main_Model_User ();
        // Add forms
        $this->view->registerForm = $this->getRegistrationForm ();
    }

    public function indexAction()
    {
    }

    public function registerAction()
    {
    }

    public function completeRegistrationAction()
    {
        $request = $this->getRequest ();
        if (! $request->isPost ())
        {
            return $this->_helper->redirector ( 'register' );
        }
        if (false === $this->_model->registerUser ( $request->getPost () ))
        {
            return $this->render ( 'register' );
        }
    }

    public function getRegistrationForm()
    {
        $urlHelper = $this->_helper->getHelper ( 'url' );
        $this->_forms ['register'] = $this->_model->getForm ( 'userRegister' );
        $this->_forms ['register']->setAction ( $urlHelper->url ( 
            array (
                'controller' => 'user', 
                'action' => 'complete-registration' 
            ), 
            'default' ) );
        $this->_forms ['register']->setMethod ( 'post' );
        return $this->_forms ['register'];
    }
}

application.ini

[production]
autoloadernamespaces[] = "Zend_"
autoloadernamespaces[] = "SB_"

phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"

; front controller
resources.frontcontroller.moduledirectory = APPLICATION_PATH "/modules"

; modules
resources.modules[] =

resources.frontController.params.displayExceptions = 1

resources.db.adapter = "PDO_MYSQL"
resources.db.isdefaulttableadapter = true
resources.db.params.dbname = "****"
resources.db.params.username = "*****"
resources.db.params.password = "*******"
resources.db.params.host = "*******"
resources.db.params.charset = "UTF8"

[staging : production]

[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

0 Cevap