Ошибка при обновлении фреймворка Kohana до 3.3

Тема в разделе "Как сделать...", создана пользователем Provokator86, 31 дек 2014.

  1. Provokator86

    Provokator86

    Регистр.:
    27 май 2012
    Сообщения:
    334
    Симпатии:
    191
    Доброго времени суток.
    Обновляю фреймворк с 3.1 до последней версии 3.3 и, как всегда не всё гладко.
    Почти все проблемы устранены, но одна осталась
    В браузере выдает
    Database_Exception [ 1054 ]: Unknown column 'articles.id' in 'on clause' [ SELECT `status`.`id` AS `status:id`, `status`.`name` AS `status:name`, `status`.`code` AS `status:code`, `status`.`edit_date` AS `status:edit_date`, `article`.`id`
    В коде
    protected $_belongs_to = array(
    // proper relations. Can not be deleted if business deleted
    'status' => array(
    'model' => 'Status',
    'foreign_key' => 'status_id',
    ),
    'author' => array(
    'model' => 'User',
    'foreign_key' => 'author_id',
    )
    );

    protected $_has_many = array(
    'categories' => array(
    'model' => 'Category',
    'through' => 'articles_categories'
    ),
    'businesses' => array(
    'model' => 'Business',
    'through' => 'articles_businesses'
    ),
    'cities' => array(
    'model' => 'Address_City',
    'through' => 'articles_cities'
    ),
    'images' => array(
    'model' => 'Image',
    'through' => 'articles_images',
    ),
    );

    protected $_load_with = array('status');


    public function get_resource_id()
    {
    return 'article';
    }
    Вроде всё по фен шую, но проблема не устраняется.
    Прошу помощи знатоков, ибо идеи мои иссякли....
     
  2. bat

    bat

    Регистр.:
    24 сен 2009
    Сообщения:
    976
    Симпатии:
    277
    дык сразу видно что проблема в несовместимости мускуля... тут четыре варианта:
    1. фикс двига (к разрабам или фрилансерам), по идее надо в таблу просто добавить строку которая по дебагу вылазит, но тож чревато разной фигней
    2. обратиться к суппортам хостинга (мне не помогло ни разу, им впадлу)
    3. переезд на хост с соответствующим версии двига мускулем
    4. забить и не обновлять (я так и сделал)
     
  3. metsys

    metsys

    Регистр.:
    27 апр 2014
    Сообщения:
    423
    Симпатии:
    408
    articles.id и `article`.`id` разное
    и в коде их не видно
     
  4. Provokator86

    Provokator86

    Регистр.:
    27 май 2012
    Сообщения:
    334
    Симпатии:
    191
    До обновления фреймворка движка работала. Стоковый фрейм версии 3.3 привет мир выводит. Трабла в обновлении двух гадских модулей ORM и Database
     
  5. bat

    bat

    Регистр.:
    24 сен 2009
    Сообщения:
    976
    Симпатии:
    277
    Дык вполне вероятно что модули сами по себе не совместимы с новой версией фреймворка, не первый и не последний случай, я бы назад вернулся и успокоился, мания постоянно обновлять то что и так работат без проблем у меня давно отпала.
    Давай ближе к делу... у коханы есть косяки, в частности лишние запросы к бд именно от orm, написано на хабре: http://habrahabr.ru/post/154865/
    Смотри, на джит, database в норме: https://github.com/kohana/database
    orm тоже: https://github.com/kohana/orm
    если с джита не катят, может проблема действительно в другом месте?
     
  6. Provokator86

    Provokator86

    Регистр.:
    27 май 2012
    Сообщения:
    334
    Симпатии:
    191
    В том-то и дело, что ORM версии 3.1 релиза работает, а обновленный выкидывает такие ошибки.
    Меняю один файл с предыдущей версии модуля ORM, что в папке orm/classes/kohana/ORM.php работает.
    через WinMegre посмотрел изменения и понял, что они его практически полностью переписали
     
  7. bat

    bat

    Регистр.:
    24 сен 2009
    Сообщения:
    976
    Симпатии:
    277
    дык я же скинул с хабра статью - иди в том направлении... я просто по пьяни (это мое состояние сейчас) не смог найти версию мускуля для 3.3, но направление точно то и именно orm, дампы есть же, попытка не пытка
    з.ы. хотя мне лично бы хотелось пожелать тебе на пару дней забить на это и нормально встретить НГ )))
     
    Provokator86 нравится это.
  8. Provokator86

    Provokator86

    Регистр.:
    27 май 2012
    Сообщения:
    334
    Симпатии:
    191
    Ну, что, праздники прошли, можно снова впрягаться в поиски, ведь, как говорили Фокс Малдер и Данна Скалли: "Истина где-то рядом".
    После обновления проекта на фреймворке стало выдавать такую хрень
    Database_Exception [ 1054 ]: Unknown column 'articles.id' in 'on clause' [ SELECT `status`.`id` AS `status:id`, `status`.`name` AS `status:name`, `status`.`code` AS `status:code`, `status`.`edit_date` AS `status:edit_date`, `article`.`id` AS `id`, `article`.`title` AS `title`, `article`.`code` AS `code`, `article`.`text` AS `text`, `article`.`author_id` AS `author_id`, `article`.`status_id` AS `status_id`, `article`.`create_date` AS `create_date`, `article`.`edit_date` AS `edit_date`, `article`.`title_index` AS `title_index`, `article`.`text_index` AS `text_index`, `article`.`category_index` AS `category_index` FROM `articles` AS `article` LEFT JOIN `articles_cities` ON (`articles`.`id` = `articles_cities`.`article_id`) LEFT JOIN `statuses` AS `status` ON (`status`.`id` = `article`.`status_id`) WHERE `articles_cities`.`city_id` = '2' AND `status`.`code` IN ('active', 'post-moderation') ORDER BY `create_date` DESC LIMIT 7 ]
    Кто, что может подсказать на эту тему? Неизвестный article.id трам пам пам....
    Но, что такого произошло при обновлении модулей ORM и Database? Именно из-за них возникает трабла. Меняю на старый ORM, работает, но коряво. Появляется фронтенд сайта. При обновленных модулях, висит сообщение написанное выше
    .
     
    Последнее редактирование: 16 янв 2015
  9. Пендель

    Пендель Писатель

    Регистр.:
    16 апр 2014
    Сообщения:
    9
    Симпатии:
    3
    У вас таблица articles есть? А в ней столбик id есть? Ошибка то в том что их нет или не видать
     
  10. Provokator86

    Provokator86

    Регистр.:
    27 май 2012
    Сообщения:
    334
    Симпатии:
    191
    Есть такие столбики. Вся ситуация произошла после обновления фрейма.
    Ругается на модуль database на эту строчку
    throw new Database_Exception(':error [ :query ]',
    Если меняю ORM модуль из ветки 3.1.x, то функционирует, но с менее критичными ошибками