使用Auth :: user()填充表单

Pex*_*Pex 2 php database forms eloquent laravel-5

我正在尝试使用登录用户填充表单,以便我可以编辑一些配置文件信息.

我目前有这个代码(只是尝试首先显示电子邮件,一旦有效,将填充表单):

我创建了一个editprofile.blade.php模板:

@extends('masterpage')

@section('content')

<h1> Edit Profile </h1>


{{ Form::model($user) }}

    <div class="form-group">
        {{ Form::label('email', 'E-mail') }}
        {{ Form::Text('email', null, ['class' => 'form-control']) }}
    </div>
{{ Form::close() }}

@stop
Run Code Online (Sandbox Code Playgroud)

在myProfileController.php中我有:

<?php namespace App\Http\Controllers;

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

use Illuminate\Html\FormFacade;
use Illuminate\Html\HtmlFacade;

class ProfileController extends Controller {

    public function show() {
        $user = Auth::user();

        return view('pages.editprofile')->withUser($user);
    }

}
Run Code Online (Sandbox Code Playgroud)

在我的路线中,我补充说:

Route::get('/profile/edit', 'ProfileController@show');
Run Code Online (Sandbox Code Playgroud)

但是当我尝试加载页面时,我得到了这个: 在此输入图像描述

我有两个问题:

1:为什么没有表格显示数据?正如您所看到的那样,电子邮件正在加载到表单中,但它将其显示为文本.

2.一旦数据加载到成功的表格中并且用户编辑了一些数据,我将如何进行更新功能以保存编辑的数据?

Ale*_*vić 5

我认为您只是输出原始数据,因为可能您使用的是双括号{{}}.

我记得当我将一个站点从laravel 4迁移到laravel 5时,我有同样的事情.他们改变了刀片输出的方式并回显了数据.尝试将双括号{{}}更改为此{{!! !!}}或此{{{}}}我不记得究竟是哪一个.

编辑:关于保存你可以使用控制器,所以当用户发布数据时,它只是使用post方法转到类似的url,所以它调用控制器内的更新功能.

对于某些用户应完全控制其配置文件的功能,如编辑,更新,删除,创建,我将使用此http://laravel.com/docs/5.0/controllers#restful-resource-controllers中的示例来查看安静的控​​制器