【发布时间】:2020-07-21 00:41:55
【问题描述】:
我正在使用 Laravel 开发一个简单的项目,但在更新与未定义变量相关的记录时遇到了问题。我想我有。我有一个带有编辑按钮的表,单击时会重定向到 update.blade.php。我收到的错误消息来自连接到数据库或其他东西的未定义变量。请问我该如何解决这个问题?我需要帮助
请这是我收到的错误消息。
这是 update.blade.php 文件
@extends('layout.app')
@section('content')
<h1>Update</h1>
<form method="post" action="/users">
{{!!csrf_field()!!}}
<div class="form-group">
<label>Name</label>
<input type="text" value="{!! $message->name !!}" name="name" class="form-control" required>
</div>
<div class="form-group">
<label>Email</label>
<input type="text" value="{!! $message->email !!}" name="email" class="form-control" required>
</div>
{{method_field('PUT')}}
<button name="submit" class="btn btn-primary">Update</button>
</form>
@endsection
MessagesController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Message;
class MessagesController extends Controller
{
public function submit(Request $request){
$message = new Message;
$message -> name = $request -> input('name');
$message -> email = $request -> input('email');
$message -> message = $request -> input('message');
$message -> save();
return redirect('/') -> with('status', 'Message sent');
}
public function getMessages(){
$message = Message::all();
return view('messages') -> with('messages', $message);
}
public function edit($id){
$message = Message::find($id);
if (empty($message)) {
return redirect('/user');
}
return view('update', compact($message));
}
}
模型Message.php
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Message extends Model
{
//
}
【问题讨论】:
-
你把它命名为
messages,而不是message-> with('messages', $message);
标签: php html mysql laravel eloquent