我需要幫助更新我在laravel中創建的博客文章。 我正在使用寧靜控制器中的更新方法來處理此問題。 在我看來,表單正在提交給控制器內的正確功能(更新方法),但數據庫中的表沒有反映出這種變化。更新Laravel中的表單
以下是我有以下形式:
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Register</div>
<div class="panel-body">
<form class="form-horizontal" role="form" method="POST" action="{{ url('/posts/$post_id') }}">
{{ csrf_field() }}
<input type="hidden" name="_method" value="PUT">
<div class="form-group{{ $errors->has('title') ? ' has-error' : '' }}">
<label for="title" class="col-md-4 control-label">Title</label>
<div class="col-md-6">
<input id="title" type="text" class="form-control" name="title" value="{{ !empty(old('title')) ? old('title') : $post->title }}" required autofocus>
@if ($errors->has('title'))
<span class="help-block">
<strong>{{ $errors->first('title') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('content') ? ' has-error' : '' }}">
<label for="content" class="col-md-4 control-label">Content</label>
<div class="col-md-6">
<textarea id="content" type="text" class="form-control" name="content" required rows="15" cols="20">{{ !empty(old('content')) ? old('content') : $post->content }}</textarea>
@if ($errors->has('content'))
<span class="help-block">
<strong>{{ $errors->first('content') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Post
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
這裏是控制器功能
public function update(PostRequest $request, $id)
{
$title = $request->title;
$content = $request->content;
DB::table('posts')->where('id', $id)->update(['title' => $title, 'content' => $content]);
return 'Post was updated.<br>' . $title . '<br>' . $content;
}
我增加了$標題和$內容變量return語句只是爲了看看他們正在經歷良好並被正確捕獲。當我提交表格時,我會收到返回語句,因爲它是寫在這裏的。這至少告訴我這個表單正確地提交給了這個函數,但正如我所說的那樣,數據庫並沒有反映這個變化。有人知道我在這裏做錯了嗎?不知道是否其更新命令對於使用隱藏的inout字段的PUT方法的存根無法正確工作。
在此先感謝。
不相關的問題,但我會強烈建議使用**雄辯模型**。然後你的更新查詢就像'$ post-> update();' – linuxartisan
一樣簡單。你爲什麼不調試你的SQL查詢,儘管它看起來更新查詢? – Kamal