Bagaimanakah laravel mengembalikan mesej kejayaan?
ringa_lee
ringa_lee 2017-05-16 16:55:22
0
1
560

Jika simpan gagal, ini kodnya

return redirect()->back()->withInput()->withErrors('保存失败!');

Kalau save berjaya macam mana nak balik kalau ada template?

return redirect('/模版)->??????('保存成功');

Atau mesej kejayaan akan muncul pada templat

return redirect('/模版)->with('保存成功',$ok);  //总不能一直显示。。

================================================ === ==============================

Penghala:

   
    Route::get('/config', 'ConfigsController@index');

    Route::post('config/add', [
        'as' => 'add',
        'uses' => 'ConfigsController@add'
    ]);

Pengawal

<?php namespace App\Http\Controllers\Admin;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;
use App\Configs;

use Input;
use Illuminate\Http\Response;


class ConfigsController extends Controller {


    /**
     * 显示配置页面,从数据库ID=1获取
     */

    public function index()
    {
        $config_view = Configs::find(1);
        return view('admin.write_config')->with('config_db',$config_view);
    }

    /**
     * 提交更新数据,表单验证
     */

    public function add(Request $request)
    {



        $this->validate($request, [
                'web_name' => 'required',
                'web_add' =>'required',
                'web_email' => 'required|email',
                'web_copy' => 'required',
                'web_keywords' => 'required',
                'web_description' => 'required',
            ]
        );


        $configs = Configs::find(1);

        $configs->web_name = Input::get('web_name');
        $configs->web_add = Input::get('web_add');
        $configs->web_email = Input::get('web_email');
        $configs->web_copy = Input::get('web_copy');
        $configs->web_keywords = Input::get('web_keywords');
        $configs->web_description = Input::get('web_description');



        //判断,如果通过验证,那么第一步跳转到config页面,并且显示成功
        if ($configs->save()) {
            return redirect('/admin/config')->with('status', 'Update Success! 成功! :)');
        } else {
            return redirect()->back()->withInput()->withErrors('保存失败!');
        }

    }

}

Halaman templat

@extends('admin.admin')

@section('content')

    <p class="home_con">
        <h3>基本设置</h3>


        <form method="post" action="/admin/config/add" class="forms">


      
           //对中文显示无效
 
            @if (session('status'))
                 
                <p class="tools-alert tools-alert-green">
                    {{ session('status') }}
                </p>
            @endif







    


            @if (count($errors) > 0)
                <p class="tools-alert tools-alert-red">
                    <strong>错误</strong>你填写数据有问题!请重新填写!<br><br>
                    <ul>
                        @foreach ($errors->all() as $error)
                            <li>{{ $error }}</li>
                        @endforeach
                    </ul>
                </p>

            @endif




            <label>
                网站名称
                <input type="text" name="web_name" class="width-50" value="{{$config_db->web_name}}" />
            </label>

            <label>
                网站地址
                <input type="text" name="web_add" class="width-50"  value="{{$config_db->web_add}}" />
            </label>

            <label>
                管理邮箱
                <input type="text" name="web_email" class="width-50"  value="{{$config_db->web_email}}" />
            </label>
            <label>
                版权信息
                <input type="text" name="web_copy" class="width-50"  value="{{$config_db->web_copy}}" />
            </label>

            <br>
            <h3>SEO管理</h3>
            <label>
                网站关键词
                <input type="text" name="web_keywords" class="width-50"  value="{{$config_db->web_keywords}}" />
            </label>

            <label>
                网站描述
                <input type="text" name="web_description" class="width-50"  value="{{$config_db->web_description}}" />
            </label>

            <input type="submit" class="btn btn-blue" value="更新" />
            <input type="hidden" name="_token" value="{{ csrf_token() }}">




        </form>









    </p>

@endsection
ringa_lee
ringa_lee

ringa_lee

membalas semua(1)
某草草

Pertama sekali, pemahaman peribadi saya tentang redirect() bukanlah redirect('/template'), tetapi redirect('/routePath'). Jika anda ingin menggunakannya seperti ini, contohnya, laksanakan lompatan berikut: redirect()并不是redirect('/模板'),而是redirect('/routePath'),如果你要这样用的话,比如说实现下面的跳转:

return redirect('success')->with('status', 'Profile updated!');

一般的流程是这样的,首先你得在routes.php中注册你的路由,比如:

Route::get('/success','UsersController@storeSuccess');

然后在UsersControllerstoreSuccess方法一般会有下面这个语句:

return view('users.success');

最后在success.blade.php中就可以使用类似下面的语句来获取跳转的信息了:

@if (session('status'))
    <p class="alert alert-success">
        {{ session('status') }}
    </p>
@endif

这里的status就是最开始redirect()->with()中的status,理解为key。用session取这个key rrreee

Proses umum adalah seperti ini, mula-mula anda perlu mendaftarkan laluan anda dalam routes.php, contohnya:

rrreee Kemudian kaedah storeSuccess UsersController biasanya mempunyai pernyataan berikut: rrreee

Akhir sekali, anda boleh menggunakan pernyataan yang serupa dengan yang berikut dalam success.blade.php untuk mendapatkan maklumat lompat:

rrreee

status di sini ialah status dalam redirect()->with(), yang difahami sebagai key. Hanya gunakan session untuk mendapatkan key ini

Akhir sekali, jika anda ingin belajar laravel, anda boleh menyemak komuniti yang baru saya lancarkan. Terdapat beberapa siri artikel dan tutorial di sini, dan saya akan cuba merakam video kemudian:

🎜. 🎜Pautan---》Laravist🎜 🎜🎜Selamat Menggoda🎜🎜
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan