updates - 将数据用户类型更新到数据库的问题
问题描述
我收到此错误参数 1 必须传递给 Illuminate\Database\Eloquent\Relations\BelongsTo::update() 。我制作的表单可以将数据提交到 2 个不同的数据库表。我有问题在提交表单期间更新数据用户类型。我是laravel的新手,希望可以帮助我
User.php 模型
'
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'ic', 'phone','email', 'usertype', 'password',
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
/**
* The attributes that should be cast to native types.
*
* @var array
*/
protected $casts = [
'email_verified_at' => 'datetime',
];
public function detailusers()
{
return $this->hasMany('App\Users\DetailUsers');
}
}'
DetailUsers.php 模型
'
<?php
namespace App\Users;
use Illuminate\Database\Eloquent\Model;
class DetailUsers extends Model
{
protected $guard = 'detail_users';
/*
* Table Name
*/
protected $table = 'detail_users';
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'user_id','organization', 'address',
];
/**
* Get the application updater
*/
public function updater()
{
return $this->belongsTo('App\User','updated_by');
}
/**
* Get information associated with the user.
*/
public function users()
{
return $this->belongsTo('App\User','id');
}
}
'
DetailUsersController
'
<?php
namespace App\Http\Controllers\Users;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Users\DetailUsers;
use App\User;
use Carbon\Carbon;
use Validation;
use Datatables;
use Response;
class DetailUsersController extends Controller
{
public function indexdetail(Request $request, $id)
{
$users = User::find(auth()->user()->id);
$users = User::findOrFail($id);
$detail = new DetailUsers;
return view('user.nufo')->with('users',$users);
}
public function storedetail(Request $request, $id)
{
//$users = User::findOrFail($id);
$detail = new DetailUsers;
$detail->organization = $request->input('organization');
$detail->address = $request->input('address');
$detail->user_id = $request->input('user_id');
$detail->save();
$users = User::find($id);
if( $detail->save() )
{
$users = new User;
$users->usertype = $request->input('usertype');
$detail->users()->update($users);
}
return redirect('/dashboard-user')->with('status','Your Data is Updated');
}
}'
用户刀片.php
'
<div class="login100-form-title p-t-25 p-b-20">{{ __('New User Update Profile') }}</div>
<div class="wrap-input100 validate-input m-b-10" >
{{ auth()->user()->name }}
<span class="symbol-input100">
<i class="fa fa-user"></i>
</span>
</div>
<div class="wrap-input100 validate-input m-b-10" >
{{ auth()->user()->ic }}
<span class="symbol-input100">
<i class="fas fa-id-card"></i>
</span>
</div>
<div class="wrap-input100 validate-input m-b-10" >
{{ auth()->user()->phone }}
<span class="symbol-input100">
<i class="fa fa-phone"></i>
</span>
</div>
<div class="wrap-input100 validate-input m-b-10" >
{{ auth()->user()->email }}
<span class="symbol-input100">
<i class="fa fa-envelope"></i>
</span>
</div>
<form method="POST" class="login100-form validate-form" action="{{url('role-user-update',Auth::user()->id,Auth::user()->usertype)}}">
{{ csrf_field() }}
{{ method_field('PUT') }}
<input type="hidden" name="user_id" value="{{ auth()->user()->id }}" >
<div class="wrap-input100 validate-input p-t-10 m-b-10" data-validate = "Organization is required">
<input placeholder="{{ __('Organization/Work Place') }}" id="organization" type="text" class="input100 form-control @error('organization') is-invalid @enderror" name="organization" value="{{ old('organization') }}" required autocomplete="organization" required>
@error('organization')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
<span class="symbol-input100">
<i class="fa fa-briefcase"></i>
</span>
</div>
<div class="wrap-input100 validate-input p-t-10 m-b-10" data-validate = "Address is required">
<input placeholder="{{ __('Address Organization/Work Place') }}" id="address" type="text" class="input100 form-control @error('address') is-invalid @enderror" name="address" value="{{ old('address') }}" required autocomplete="address" required>
@error('address')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
<span class="symbol-input100">
<i class="fa fa-briefcase"></i>
</span>
</div>
<div class="wrap-input100 validate-input m-b-10" data-validate = "Checkbox is required">
<input class="input100-check" id="usertype" type="checkbox" name="usertype" value="user" required>
<label class="form-check-label txt1" for="usertype">
{{ __('Saya Akui Semua Maklumat Yang Diberikan Adalah Benar') }}
</label>
</div>
<div class="container-login100-form-btn p-t-10">
<button type="submit" class="login100-form-btn">
{{ __('Submit') }}
</button>
</div>
</form>'
解决方案
推荐阅读
- regex - perl中的自动生成替换
- django - url中有两个slug
- python - 访问创建另一个类的类
- cmake - CMake 继承静态库依赖
- python - 你什么时候在 python 中使用双 datetime.datetime?
- php - Wordpress 自定义 wp-cron 类不会触发预定的处理程序
- python - 如何在python中测试模拟调用的值是否在可能值范围内
- emacs - Magit:有没有办法可以切换默认 magit-status 缓冲区的 --ignore-all-space 选项?
- sql - 如何将“索引”列添加到 SQLite 视图?
- functional-programming - Racket 中的数学函数