【问题标题】:How to set correctly routes and other configurations in Laravel framework and run code examples from books?如何在 Laravel 框架中正确设置路由和其他配置并运行书籍中的代码示例?
【发布时间】:2015-03-25 08:04:32
【问题描述】:

我正在尝试运行“Laravel 蓝图”一书中的代码,第 4 章:关于 Laragon 和 Bitnami Laravel 堆栈的“个人博客”。

我将所有控制器、视图、模型和路由放在相应的应用程序文件夹中,设置数据库以便显示连接和迁移的表,但是,当我想运行主页时,它说:“找不到帖子类”。我无法返回博客的主页视图。请帮助:我在配置中遗漏了什么,如何从关于 Laragon 和 Bitnami Laravel 的书中运行示例,要复制哪些文件,哪些内容保持不变以及要配置哪些内容? 谢谢

 <?php



class PostsController extends BaseController{



public function getIndex()

{

    $posts = Posts::with('Author')->orderBy('id', 'DESC')->paginate(5);

    return View::make('index')

            ->with('posts',$posts);

}



public function getAdmin()

{

    return View::make('addpost');

}

public function postAdd()

{

    Posts::create(array(

           'title' => Input::get('title'),

           'content' => Input::get('content'),

           'author_id' =>  Auth::user()->id

       ));



       return Redirect::route('index');

}

} -

类 Post 扩展 Eloquent {

//the variable that sets the table name

   protected $table = 'posts';



   //the variable that sets which columns can be edited

   protected $fillable = array('title','content','author_id');




   public $timestamps = true;



   public function Author(){



    return $this->belongsTo('User','author_id');

   }

}

 <?php

/* |------------------------------------------------- --------------------------

 Route::get('/', array('as' => 'index', 'uses' =>
'PostsController@getIndex')); Route::get('/admin', array('as' =>
'admin_area', 'uses' => 'PostsController@getAdmin'));
Route::post('/add', array('as' => 'add_new_post', 'uses' =>
'PostsController@postAdd')); Route::post('/login', array('as' =>
'login', 'uses' => 'UsersController@postLogin'));
 Route::get('/logout', array('as' => 'logout', 'uses' =>
'UsersController@getLogout'));

【问题讨论】:

  • 在您的 laravel 安装根文件夹中的终端上尝试 composer update(在您的 app 文件夹上方一层)

标签: php laravel laravel-4 laravel-routing bitnami


【解决方案1】:

看起来像一个命名空间错误,一开始我也遇到过这个问题。

请向我们展示您的 Post 类代码、您的 routes.php 文件和引发错误的控制器。

实际上,在执行此操作之前,请更改脚本中所有使用 Post:: 的位置为 \App\Post::

【讨论】:

  • 无济于事,电脑离线,怎么办?
  • 您忘记导入所有需要的类,命名空间在 PHP 中是新事物,因此您可以通过使用完整路径 (\App\Posts::) 或通过定义来引用 Post 类(使用 App\Posts;)然后您可以简单地使用 Post:: 进行引用
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多