我有2个数据库: 1.用户(姓名,用户名,密码,remember_token,admin) 2. dosen(iddosen,user_id,namadosen,nipy等)
我想更新数据,但是当我点击保存时,它没有更新到数据库。单击“保存”时没有错误。
在编辑视图中我使用关系
{! Form :: model($ user-> dosen,[' route' => [' admin.dosen.update',$ user-> dosen-> user_id], '方法' =>' 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
答案 0 :(得分:2)
从表单中看,您希望更新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!');
}
答案 1 :(得分:0)
您似乎缺少用户表中的updated_at
列。
因此,我们尝试使用&#34; DATETIME&#34;添加updated_at
列。数据类型并再次测试。
您还应该检查应用程序的错误日志文件中的消息。它通常在您的虚拟主机中配置,或者它是Apache的默认错误日志文件。
除此之外,您应该检查是否已在config / app.php中启用调试模式以查看错误消息。
'debug' => env('APP_DEBUG', true),
如果是这样,错误消息将存储在storage / logs / laravel.log中。