我有两个数据库: 1.用户(名称、用户名、密码、remember_token、admin);2. dosen (iddosen、user_id、namadosen、nipy等)
我想更新数据,但是当我单击“保存”时,它不会更新到数据库。单击“保存”时没有错误。
在编辑视图中,我使用关系
{!! Form::model($user->dosen, ['route' => ['admin.dosen.update', $user->dosen->user\_id], 'method' => 'PUT']) !!}这是我的方法:
public function update($id)
{
$userUpdate = Request::all();
$user = User::find($id);
$user->update($userUpdate);
return redirect('admin/dosen')->with('message', 'Data berhasil diubah!');
}编辑视图:
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="panel panel-default">
<div class="panel-heading">Edit {{ $user->dosen->namadosen }}</div>
<div class="panel-body">
<!-- jika terjadi error, akan menampilkan pesan -->
@if ($errors->any())
<ul class="alert alert-danger">
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
@endif
{!! Form::model($user->dosen, ['route' => ['admin.dosen.update', $user->dosen->user_id], 'method' => 'PUT']) !!}
<div class="form-group">
{!! Form::label('iddosen', 'Kode Dosen') !!}
{!! Form::text('iddosen', null, ['class' => 'form-control', 'readonly' => 'true']) !!}
</div>
<div class="form-group">
{!! Form::label('nipy', 'NIPY') !!}<br>
{!! Form::text('nipy', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('namadosen', 'Nama Dosen') !!}
{!! Form::text('namadosen', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('alamatdosen', 'Alamat') !!}
{!! Form::textarea('alamatdosen', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('notelpdosen', 'No HP Dosen') !!}
{!! Form::text('notelpdosen', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('tempatlahirdosen', 'Tempat & Tanggal Lahir') !!}
<div class="form-inline">
{!! Form::text('tempatlahirdosen', null, ['class' => 'form-control']) !!}
{!! Form::text('tanggallahirdosen', null, ['class' => 'form-control']) !!}
</div>
</div>
{{ Form::button('<i class="fa fa-check-square-o"></i> Simpan', ['type' => 'submit', 'class' => 'btn btn-primary'] ) }}
<a class="btn btn-small btn-success" href="{{ URL('dosen/') }}"><i class="fa fa-reply"></i> Kembali</a>
{!! Form::close() !!}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection发布于 2016-08-06 04:40:47
从表单上看,您希望更新的是dosen表,而不是user表。你必须明确地这样做。$user->update()只更新name, username, password字段。
因此,应该返回关系,然后更新它。
public function update($id)
{
$dosenUpdate = Request::all();
$user = User::find($id);
$user->dosen()->update($dosenUpdate);
return redirect('admin/dosen')->with('message', 'Data berhasil diubah!');
}发布于 2016-08-06 03:52:15
看起来在user表中缺少了updated_at列。因此,让我们尝试添加带有"DATETIME“数据类型的updated_at列,并再次测试它。
您还应该检查应用程序的错误日志文件中的消息。它通常是在虚拟主机中配置的,或者是Apache的默认错误日志文件。
此外,您应该检查是否已经在config/app.php中启用了调试模式,以查看错误消息。
'debug' => env('APP_DEBUG', true),如果是这样,错误消息将存储在存储/log/laravel.log中。
https://stackoverflow.com/questions/38799226
复制相似问题