kohana, не могу загрузить orm модель

У меня проблема с сохранением данных в базе данных в Kohana с использованием ORM. Я не эксперт, но я сделал более сложные вещи, чем это. Я предполагаю, что отсутствие основ приводит к этому.

Я добавлю модель, форму и код действия контроллера ниже. Если что-то еще нужно, вы можете спросить. пс. Это мой первый пост, поэтому я надеюсь, что правила не нарушены.

модель:

class Model_Polloptionvote extends ORM {
    protected $_table_name      = "poll_option_votes";
    protected $_primary_key     = "id";
    protected $_belongs_to = array(
        'option' => array(
            'model'  => 'polloption'
        )
    );

    protected $_table_columns = array(
        'id'        => array('type' => 'int'),
        'option_id' => array('type' => 'int'),
        'cookie'    => array('type' => 'string')
    );
}

Форма вызова действия:

<form action="<?php echo Route::url("home", array(
    "controller"       => "polls",
    "action"           => "vote"
)); ?>" method="POST">      
    <?php
    if(isset($optionmodel)) {
        foreach ($optionmodel as $option) { ?>
            <label><?php
            echo Form::radio('option_id', $option->id, FALSE);
            echo $option->name; ?> </label> <?php 
            echo "</br>";
        }
    } ?>
    </br>
    <input type="submit" name="submit" id="submit" value="<?php echo __("Vote"); ?>" />
</form>

действие контроллера опроса:

<?php defined('SYSPATH') or die('No direct script access.');

class Controller_Polls extends Controller_Base {

    public function action_vote() {

        $votemodel = ORM::factory("polloptionvote");
        $id = $this->request->post("option_id");
        if ($id != "") {
            $optionmodel = ORM::factory("polloption", $id);
            if ($votemodel->loaded()) {
                $votemodel->option_id = $id;
                $votemodel->cookie = "cookie";
                $votemodel->save(); 
            }

            $this->request->redirect(Route::url("home", array(
            "controller"    => "index"
            )));

        }

Вид загружается нормально, но кажется, что $votemodel->loaded() всегда ложно. Если изменить это условие на 1==1 Я получаю ошибку. Вероятно, потому что действие не знает, что сохранить где.

ОБНОВЛЕНИЕ ПОСЛЕ СМОТРЕТЬ error.log:

журнал ошибок: PHP Неустранимая ошибка: вызов функции-члена route() для необъекта в /home/mywebsite/public_html/new/application/views/kohana/error.php в строке 144

<?php if (Model_Korisnik::current() !== null) : ?>
              <ul>
                <li>Korisnik/ca: <span><?php echo Model_Korisnik::current()->username; ?></span></li>
                <li class="profile"><a href="<?php echo Route::url("viewUser", array(
                                "ignore"    => Model_Korisnik::current()->username,
                                "id"        => Model_Korisnik::current()->id
                            )); ?>" title="<?php echo __("Profile"); ?>"><?php echo __("Profile"); ?></a></li>
                <li class="settings"><a href="<?php echo Route::url("settingsURL"); ?>" title="<?php echo __("Settings"); ?>"><?php echo __("Settings"); ?></a></li>
                <li class="logout"><a href="<?php echo Route::url("auth", array(
                                "action"    => "logout"
                            )); ?>?redirect=<?php echo rawurlencode(Request::current()->route()->uri(Request::current()->param()) . URL::query()); ?>" title="<?php echo __("Log out"); ?>"><?php echo __("Log out"); ?></a></li>
              </ul>
          <?php else : ?>

Последняя строка 146

0 ответов

Другие вопросы по тегам