Кохана: Jelly-Auth и Jelly-Formo не будет хорошо играть вместе ... вызвать ошибки

StackOverflow https://stackoverflow.com/questions/3722000

  •  03-10-2019
  •  | 
  •  

Вопрос

Пытаясь использовать модули: Jelly-auth. а также Желе-форма вызывает 2 ошибки. В зависимости от того, как я организую свой файл Boostrap, я могу избавиться от одной ошибки или другой, но не оба ...

Ошибка 1: Auth Works Fine Formo не:http://wellcommentedcode.com/stack_questions/fomo.jpg.

Kohana::modules(array(
  'database'    => MODPATH.'database',   // Database access

  'jelly'       => MODPATH.'jelly',   // Jelly ORM

  'jelly-auth'  => MODPATH.'jelly-auth',       // Basic authentication & Jelly
  'auth'        => MODPATH.'auth',       // Basic authentication

  'formo-jelly' => MODPATH.'formo-jelly',   // Easy forms & Jelly
  'formo'       => MODPATH.'formo',   // Easy forms
  ));

Ошибка 2: Formo работает нормально, авторские перерывы на проверку:http://wellcommentedcode.com/stack_questions/fho-auth.jpg.

Kohana::modules(array(
  'database'    => MODPATH.'database',   // Database access

  'formo-jelly' => MODPATH.'formo-jelly',   // Easy forms & Jelly
  'formo'       => MODPATH.'formo',   // Easy forms

  'jelly'       => MODPATH.'jelly',   // Jelly ORM

  'jelly-auth'  => MODPATH.'jelly-auth',       // Basic authentication & Jelly
  'auth'        => MODPATH.'auth',       // Basic authentication
));

Любая помощь будет высоко оценена ... Спасибо ...

Обновлять:Я получил ошибку 2 фиксированной в килограмме ... Лучший метод будет оценен ...

Я просто прокомментировал линию 81 и 82 Formo-Jelly / Classes / Jelly / Model.php

Я хотел бы иметь возможность пользоваться достоверной проверкой Jelly-Formo ... но как это вызывает проблемы с проверкой авторизации прямо сейчас ... Я готов почьте эти две линии на данный момент ...

81: if ( ! $this->form->validate(TRUE))
82:     throw new Validator_Exception($this->form->errors(), 'Failed to validate form');
Это было полезно?

Решение

Несовместимость между модулями поступает из Kohana-Formo-Jelly / Classe / Jelly / Model.php:

// If the formo object to validate against doesn't exist, make it
$this->generate_form();

if (!$this->form->validate(TRUE))
    throw new Validator_Exception($this->form->errors(), 'Failed to validate form');

Вот мои изменения, я не заболел, так как я только начинаю использовать Jelly-Auth / formo:

if (isset($this->form))
{
    // If the formo object to validate against doesn't exist, make it
    $this->generate_form();

    if (!$this->form->validate(TRUE))
        throw new Validator_Exception($this->form->errors(), 'Failed to validate form');
}

пластырь: https://github.com/gimpe/kohana-formo-jelly/commit/e95df23ficed9647f41f70f18244dc1794ba7c6bc1.

Другие советы

Вы всегда должны использовать try...catch() Блоки при сохранении желейных объектов:

try {
    $model->save();
    // object saved successfully
}
catch (Validate_Exception $e)
{
    // get validation errors
    $errors = $e->array->errors();
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top