数组到字符串转换错误 - Kohana

时间:2013-09-08 17:45:38

标签: php kohana kohana-3

我是Kohana的新手,我正在关注this excellent tutorial。我收到这个神秘的错误消息

  

ErrorException [8]:数组到字符串的转换〜   SYSPATH \ classes \ Kohana \ Log \ Writer.php [81]

尝试加载此网址后

http://localhost/kohana-blog/index.php/article/new

问题似乎源于我的Model_Article(),因为我只收到这行代码就会出现此错误

public function action_new() 
    {           
        $article = new Model_Article();

        /*

        $view = new View('article/edit');
        $view->set("article", $article);

        $this->response->body($view);
        */
    }

我按照作者的建议在database中取消评论ormapplication/bootstrap.php

以下是application/classes/Controller/Article.php

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

class Controller_Article extends Controller {

    public function action_index() 
    {
        $view = new View('article/index');
        $this->response->body($view);
    }

    // loads the new article form
    public function action_new() 
    {
        $article = new Model_Article();

        $view = new View('article/edit');
        $view->set("article", $article);

        $this->response->body($view);
    }

    // save the article
    public function action_post() 
    {
        $article_id = $this->request->param('id');
        $article = new Model_Article($article_id);

        // Populate $article object form 
        $article->values($_POST); 

        // Saves article to database
        $article->save();

        // Redirects to article page after saving
        $this->request->redirect('index.php/article');      
    }

}

以下是application/views/article/edit.php

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

<h1>Create new article</h1>

<?php echo Form::open('article/post/'.$article->id); ?>
    <?php echo Form::label("title", "Title"); ?>
    <br />
    <?php echo Form::input("title", $article->title); ?>
    <br />
    <br />
    <?php echo Form::label("content", "Content"); ?>
    <br />
    <?php echo Form::textarea("content", $article->content); ?>
    <br />
    <br />
    <?php echo Form::submit("submit", "Submit"); ?>
<?php echo Form::close(); ?>

这里是application/classes/Model/article.php

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

class Model_Article extends ORM {

}

1 个答案:

答案 0 :(得分:2)

运行PHP 5.4.12 and beyond时这是一个已知问题。 It has been fixed in 3.3.1