如何建立与控制器的4个链接?

时间:2019-02-18 09:56:04

标签: laravel model-view-controller

我正在laravel中建立一个新项目

我的东西:

1- PostsController

2-帖子模型

3- Routes:resource('posts','PostsController')

4-登录后,我有一个用于创建帖子的创建按钮

点击它后,我有下面的图片:

enter image description here

我的愿望

我希望在不更改整个项目或整个路线的情况下拥有这些资源:

登录后,我想要有4个这样的盒子(我做到了)

enter image description here

具有此属性:

点击其中任何一个后,我都可以根据其类型创建帖子

  

例如,如果我单击视频内容,则进入具有2种形式的页面:   例如标题视频和上传视频

     

点击文本内容后,我进入页面,就像显示的图像一样   你是第一个

这意味着如果我单击视频内容,资源路径会带我在postscontroller中创建方法,并创建方法检查我是否来自内容视频链接 返回视图(posts.create_video),或者如果我来自声音内容链接框,则返回视图(posts.content_sound)等框

我该怎么办,请帮助我

1 个答案:

答案 0 :(得分:1)

您可以将其结构如下:

  • [routes / web.php]

    Route::get('posts/create/{type}', 'PostController@create')->name('posts.create');
    Route::resource('posts', 'PostController')->except(['create']);
    
  • [PostController]

    class PostController extends Controller
    {
        public function create($type)
        {
            if (in_array($type, ['sound', 'video', 'image', 'text'])) {
                return view("posts.content_{$type}");
            }
            abort(404);
        }
    }