我目前正在为大学开展一个项目。我试图让更新功能起作用。我已经在任何帮助或方向下面显示我的代码将不胜感激。
我的视图文件显示当前在数据库中的什么,我想编辑一个字段并将其更新回数据库。
提前致谢。
控制器
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Auth;
class LessonsController extends Controller
{
public function update(Request $request)
{
$lesson->level = $request->level;
$lesson->update();
return redirect('./lessons/');
}
}
查看文件
<html>
<head>
<title></title>
</head>
<body>
<form class="form-horizontal" method="post" action="./{{ $lesson->id }}">
{{ method_field('put') }}
{{ csrf_field() }}
<input type="hidden" name="_method" value="PUT" />
<div class="form-group">
<label class="col-md-4 control-label">Username</label>
<div class="col-md-6">
<input type="text" name="level" class="form-control" value="{{ $lesson->level }}">
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<input type="submit" id="update-account" class="btn btn-primary" value="Update">
</div>
</div>
</form>
</body>
答案 0 :(得分:1)
$request->get('key')
$lesson = Lesson::where('id', $request->get('id'))->firstOrFail();
$lesson->level = $request->get('level');
$lesson->save();
然后:
<% if (session.cart.totalItems) { %>
</i> Cart <span class="badge"><%= session.cart.totalItems %></span></a>
<% } %>`
答案 1 :(得分:1)
在文件顶部包含Lesson
模型命名空间:
use App\Lesson;
// or App\Models\Lesson if you placed it under a different directory, for example.
您可以使用路由模型绑定简化查询以查找Lesson
记录:
public function update(Request $request, Lesson $lesson)
{
$lesson->update([
'level' => $request->level
]);
return redirect()->route('lessons.show', compact('lesson'));
}
同时更新表单操作:
action="{{ route('lessons.update', $lesson->id) }}"
答案 2 :(得分:1)
您需要ID(主键)来更新数据
public function update(Request $request)
{
$lesson = Lesson::find($id);
$lesson->level = $request->level;
$lesson->save();
return redirect('./lessons/');
}
我认为如果您只想更新级别..更好地使用PATCH
方法..
我认为当您想要更新所有表数据时put
方法正在使用,但patch
方法用于更新模型的所有参数#CMIIW