Routing 如何正确使用laravel 4路线?

Routing 如何正确使用laravel 4路线?,routing,laravel,laravel-4,Routing,Laravel,Laravel 4,我对拉拉维尔真的很陌生 背景: 我创建了两个迁移用户表和posts表。 我创建了两个模型,用户和帖子之间的关系正确。 我在数据库中植入了一些数据。 但我对路线和风景有点困惑 这是我的原型: // Posts Route::get('add', 'PostsController@add'); Route::post('add', 'PostsController@store'); Route::resource('posts', 'PostsController', array( 'e

我对拉拉维尔真的很陌生

背景:

我创建了两个迁移用户表和posts表。 我创建了两个模型,用户和帖子之间的关系正确。 我在数据库中植入了一些数据。 但我对路线和风景有点困惑

这是我的原型:

// Posts

Route::get('add', 'PostsController@add');
Route::post('add', 'PostsController@store');

Route::resource('posts', 'PostsController', array(
    'except' => array('create', 'store')
));


// Users

Route::get('login', 'UsersController@login');

Route::get('logout', 'UsersController@logout');

Route::get('profile', array(
    'before' => 'auth',
    'uses' => 'UserController@profile'
));

Route::get('register', UsersController@register');

Route::post('register', 'UsersController@store');

Route::resource('users', 'UsersController', array(
    'except' => array('create', 'store')
));
对于这个简单的例子,您会怎么做

我真的不知道如何以适当的方式实现slug路由

你有合适的路由和搜索引擎优化的好例子吗?Github/BitBucket


谢谢

这是后段塞的一个示例路径:

Route::get('posts/{slug}', array('as' => 'posts.show', 'uses' => 'PostsController@show'));
以及控制器显示方法:

class PostsController extends BaseController {

    public function show($slug, $language = null)
    {
        if ($post = Post::findBySlug($slug))
        {
            return View::make('posts.article')->with('post', $post);
        }

        return Redirect::route('posts.index');
    }
}
在您的模型中,可以添加“按段塞查找”方法:

public static function findBySlug($slug)
{
    return Post::where('slug', $slug)->first();
}
为了拯救你的鼻涕虫,比如:

$post->title = Input::get('title');
$post->post = Input::get('text');
$post->slug = Str::slug(Input::get('title'));
$post->save();

感谢您的回答,文档中说使用动态作用域而不是findBySlug方法。我认为使用资源可以简化我的应用程序,但我会创建自己的自定义路线。只是关于路线的另一个问题。您是否使用了Route::get、Route::post。。。或者Route::any和check请求在控制器中?我使用Route::get和Route::post。控制器上的代码越少越好。另外,看看这篇关于路由的帖子:。