菜单

js_脚本之家澳门太阳集团

2020年3月15日 - 首页

新增新闻页

我写的注册表单,用post请求提交到registOK页面,提交后提示cannot
post错误。用的express模板引擎,代码如下:

澳门太阳集团,路由

/app/Http/routes.php

    Route::get('/news/create', 'NewsController@create'); //新建页面
app.get("/registOK",function  { res.render; 

创建方法

/app/Http/Controllers/NewsControllers.php

    public function create(){
        return view('news.create');
    }

后来在网上查找发现,路由一般使用“get”就可以,但如果表单提交你指定了“post”,路由上也得加一条:

composer 安装 illuminate/html (form插件)

composer require illuminate/html
app.post("/registOK",function  { res.render; 

配置

    return [
        'providers' => [
            IlluminateHtmlHtmlServiceProvider::class,
        ],
        'aliases' => [
            'Form' => IlluminateHtmlFormFacade::class,
        ]
    ]

交换位置,优先匹配 /news/create 这个路由

    Route::get('/news', 'NewsController@index'); // 列表    
    Route::get('/news/create', 'NewsController@create'); //新建页面
    Route::get('/news/{id}', 'NewsController@show');

新增提交表单 的路由

注意这里是post请求

    Route::post('/news','NewsController@store');

模板form 添加提交地址

    {!! Form::open(['url'=>'news/']) !!}

News控制器

    public function store(Request $request) {
        $input                 = $request->all(); //接收post数据
        $input['published_at'] = Carbon::now(); //生成时间
        News::create($input); //调用model的create方法, 写入数据库
        return redirect('/news'); //重定向
    }

index 以添加时间排序

    public function index() {
        // $result = News::all();
        $result = News::latest()->get(); //以添加时间排序
        return view('news.index', compact('result'));
    }

直接接收post值 进行操作(省略published_at)

    public function store(Request $request) {
        News::create($request->all()); //调用model的create方法, 写入数据库
        return redirect('/news'); //加载列表页
    }

模板生成 选择html

<div class="form-group">
{!! Form::label('创建时间','创建时间') !!}
{!! Form::input('date', 'published_at', date('Y-m-d'), ['class'=>'form-control']) !!}
<!-- 参数1 input类型 -->
<!-- 参数2 字段name -->
<!-- 参数1 用PHP date函数, 赋初始值 -->
</div>

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图