Старый 28.01.2012, 13:43   #1
Специалист
 
Аватар для denkart
 
Регистрация: 29.03.2009
Адрес: denkart
Сообщений: 179
Вес репутации: 190
denkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человек
Отправить сообщение для denkart с помощью ICQ
По умолчанию Zend Framework 1.11.11 установка

Скачал http://www.zend.com/en/community/downloads
распаковал на ftp у хостера.

Настроил конфиг вроде все завилось и работает.

Когда начал создавать модель выскочила ошибка, похоже с автозагрузкой проблема...

Fatal error: Class 'Application_Model_DbTable_Tov' not found in /home/h/qwe/mydomean/application/controllers/IndexController.php on line 18

На форуме zenda постил проблему, пока молчат ((
Помогите найти баг

Вот что имеем :

123123.jpg

.htaccess
PHP код:
    SetEnv APPLICATION_ENV development
     
    RewriteEngine On
    RewriteCond 
%{REQUEST_FILENAME} -[OR]
    
RewriteCond %{REQUEST_FILENAME} -[OR]
    
RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule 
^.*$ - [NC,L]
    
RewriteRule ^.*$ index.php [NC,L
application.ini
PHP код:
    [production]
     
    
# Debug output
    
phpSettings.display_startup_errors 0
    phpSettings
.display_errors 0
     
    
# Include path
    
includePaths.library APPLICATION_PATH "/../library"
     
    
# Bootstrap
    
bootstrap.path APPLICATION_PATH "/Bootstrap.php"
    
bootstrap.class = "Bootstrap"
     
    
# Front Controller
    
resources.frontController.controllerDirectory APPLICATION_PATH "/controllers"
    
resources.frontController.env APPLICATION_ENV
     
    
# Layout
    
resources.layout.layout "layout"
    
resources.layout.layoutPath APPLICATION_PATH "/layouts/scripts"
 
    
# Views
    
resources.view.encoding "UTF-8"
    
resources.view.basePath APPLICATION_PATH "/views/"
     
    
# Database
    
resources.db.adapter "pdo_mysql"
    
resources.db.params.host "localhost"
    
resources.db.params.username "123123"
    
resources.db.params.password "123123"
    
resources.db.params.dbname "123123"
    
resources.db.isDefaultTableAdapter true
     
    
# Session
    
resources.session.save_path APPLICATION_PATH "/../data/session"
    
resources.session.remember_me_seconds 864000
     
    
[testing production]
     
    
# Debug output
    
phpSettings.display_startup_errors 1
    phpSettings
.display_errors 1
     
    
# Database
    
resources.db.params.dbname "myproject_testing"
     
    
[development production]
     
    
# Debug output
    
phpSettings.display_startup_errors 1
    phpSettings
.display_errors 1
     
    
# Database
    
resources.db.params.dbname "myproject_development" 
Bootstrap.php

PHP код:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
    
{
        
/**
         * Метод 
         * @return Zend_View запускаем представление
         */
        
protected function _initView()
        {
            
// Initialize view
            
$view = new Zend_View();
            
//Сообщаем приложению какой doctype использовать
            
$view->doctype('XHTML1_STRICT');
            
//Создаем мета тег Content-Type
            
$view->headMeta()->appendHttpEquiv('Content-Type''text/html; charset=utf-8');
            
// Указываем символ разделитель в теге title
        
$view->headTitle()->setSeparator(' - ');
            
// Определяем содержимое тега title
            
$view->headTitle('Мой проект Bootstrap');           // serverUrl()
            
$view->env APPLICATION_ENV;    
            
// Добавьте выше определенные переменные к View / Add it to the ViewRenderer
            
$viewRenderer Zend_Controller_Action_HelperBroker::getStaticHelper(
                
'ViewRenderer'
            
);
            
$viewRenderer->setView($view);    
            
// Return it, so that it can be stored by the bootstrap
            
return $view;
        }

    } 
IndexController.php

PHP код:
class IndexController extends Zend_Controller_Action
{

    public function 
init()
    {
        
/* Initialize action controller here */
    
}

    public function 
indexAction()
    {
        
// action body    
              
$this->view->title "Тест заголовка IndexController";
              
$this->view->headTitle($this->view->title);
              
       
$tov = new Application_Model_DbTable_Tov();
       
$this->view->tov $tov->fetchAll();
       
//echo 'Я в IndexController, в indexAction !!! ';
    
}
    
    public function 
addAction()
    {
    }

    public function 
editAction()
    {
    }

    public function 
deleteAction()
    {
    }

Tov.php

PHP код:
class Application_Model_DbTable_Tov extends Zend_Db_Table_Abstract
{
    
/**
     *
     * @var type имя таблицы с которой будем работать
     */
    
protected $_name 'tkani-dlya-shtor';
/**
 * Метод для получения записи по ID
 * @param type $id 
 * @return type запуск массива значений
 */
    
public function getTov($id)
    {
        
//Получаем id как параметр
        
$id = (int)$id;
        
//Используем метод fetchRow для получения записи из базы.
        //В скобках указываем условие выборки (привычное для Вас where)
        
$row $this->fetchRow('id = ' $id);
        
//Если результат пустой , выкидываем исключение.
        
if (!$row) {
            throw new 
Exception("Записи с id - $id не найдено.");
        }
        
//Возвращаем результат упакованный в массив.
        
return $row->toArray();
    }
/**
 * Метод добавления новой записи 
 * @param type $nametov названи товара
 * @param type $opiskr краткое описание товара 
 */
    
public function addTov($nametov$opiskr)
    {
        
//Формируем массив вставляемых значений
        
$data = array(
            
'nametov' => $nametov,
            
'opiskr' => $opiskr,
        );
        
//используем метод insert для вставки записи в базу
        
$this->insert($data);
    }
/**
 * Метод для обнавления записи
 * @param type $id
 * @param type $nametov названи товара
 * @param type $opiskr краткое описание товара
 */
    
public function updateTov($id$nametov$opiskr)
    {
        
//Формируем массив обнавляемых значений
        
$data = array(
            
'artist' => $nametov,
            
'title' => $opiskr,
        );
        
//используем метод update для обновления записи в базе
        //В скобках указываем условие обновления записи (привычное для Вас where)
        
$this->update($data'id = '. (int)$id);
    }
/**
 * Метод для удаления записи из базы
 * @param type $id 
 */
    
public function deleteTov($id)
    {
        
//используем метод delete для удаления записи из базы
        //В скобках указываем условие удаления записи (привычное для Вас where)
        
$this->delete('id =' . (int)$id);
    }

denkart вне форума   Ответить с цитированием
Старый 28.01.2012, 14:54   #2
Эксперт
 
Аватар для seocore
 
Регистрация: 18.06.2007
Адрес: Картофель
Сообщений: 2,417
Вес репутации: 355
seocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущее
По умолчанию

Цитата:
Сообщение от denkart Посмотреть сообщение
Fatal error: Class 'Application_Model_DbTable_Tov' not found in /home/h/qwe/mydomean/application/controllers/IndexController.php on line 18
по-моему тут очевидный ответ на Ваш вопрос
seocore вне форума   Ответить с цитированием
Старый 28.01.2012, 15:14   #3
Специалист
 
Аватар для denkart
 
Регистрация: 29.03.2009
Адрес: denkart
Сообщений: 179
Вес репутации: 190
denkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человек
Отправить сообщение для denkart с помощью ICQ
По умолчанию

Цитата:
Сообщение от seocore Посмотреть сообщение
по-моему тут очевидный ответ на Ваш вопрос
Если бы для меня он был очевиден, я бы не спрашивал !
То что он не видит класс я понимаю, а вот почему ? layouts же он подключает и views и library, а для models нужно что то прописать для загрузчика ? Если да то где в aplication.ini или Bootstrap.php ?
denkart вне форума   Ответить с цитированием
Старый 28.01.2012, 15:25   #4
Эксперт
 
Аватар для seocore
 
Регистрация: 18.06.2007
Адрес: Картофель
Сообщений: 2,417
Вес репутации: 355
seocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущее
По умолчанию

Цитата:
Сообщение от denkart Посмотреть сообщение
Если бы для меня он был очевиден, я бы не спрашивал ! То что он не видит класс я понимаю, а вот почему ? layouts же он подключает и views и library, а для models нужно что то прописать для загрузчика ? Если да то где в aplication.ini или Bootstrap.php ?
Class 'Application_Model_DbTable_Tov' not found

начните с того, что найдите, в каком файлике этот класс, а потом посмотрите цепочку инклюдов...

скорее всего ошибка где-то в путях
seocore вне форума   Ответить с цитированием
Старый 28.01.2012, 15:44   #5
Специалист
 
Аватар для denkart
 
Регистрация: 29.03.2009
Адрес: denkart
Сообщений: 179
Вес репутации: 190
denkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человек
Отправить сообщение для denkart с помощью ICQ
По умолчанию

Вложение 5575

class Application_Model_DbTable_Tov extends Zend_Db_Table_Abstract
{
}
Расположен в файле Tov.php
Изображения
Тип файла: jpg 123123.jpg (29.3 Кб, 3 просмотров)
denkart вне форума   Ответить с цитированием
Старый 28.01.2012, 16:55   #6
Специалист
 
Аватар для denkart
 
Регистрация: 29.03.2009
Адрес: denkart
Сообщений: 179
Вес репутации: 190
denkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человекdenkart - очень-очень хороший человек
Отправить сообщение для denkart с помощью ICQ
По умолчанию

Ну наконец то на zend forum проснулись
Оказывается нужно было дописать в конфиге application.ini префикс для ресурсов приложения (модели, формы и т.п.) для их автозагрузки.
appnamespace = "Application"
denkart вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
CodeIgniter FrameWork sanchos Установка кода на различные движки 9 23.04.2014 09:57
Sape View Helper для Zend Framework smsm Установка кода на различные движки 1 07.03.2012 02:00
Как расшифровать Zend? Al Pacino Курилка 5 13.03.2009 02:30
Установка кода на Adept Framework (Adept) Medved Установка кода на различные движки 6 11.12.2008 18:08
Код в Zend и шаблоны на Smarty Kors Вопросы от новичков 6 07.08.2008 17:45


Часовой пояс GMT +3, время: 07:57.