我正在研究laravel 5.2,也是laravel的初学者。我在数据库中有用户
和客户
表<客户表的code>user字段存储用户表的id列(主键)的值
。i、 一个用户有多个客户端,一个客户端属于一个用户。现在来谈谈问题。当我要插入登录用户的新客户端时,我得到了一个错误。没有任何错误消息。我搜索并了解到,这可能是因为外键列名是user
,而不是user\u id
。所以我从return$this更新了我的客户机模型-
ClientController(尝试1)
$request->user()->clients()->create([
'user' => $request->user()->id,
'email' => $request->email,
'age' => $request->age
]);
ClientController(尝试2)
$request->user()->clients()->create([
'email' => $request->email,
'age' => $request->age
]);
客户模型
namespace App;
use Illuminate\Database\Eloquent\Model;
use App\Ak\Scopes\AgeScope;
class Client extends Model
{
protected static function boot()
{
parent::boot();
static::addGlobalScope(new AgeScope);
}
public function user()
{
return $this->belongsTo('App\User', 'user');
}
}
用户模型
namespace App;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
protected $fillable = [
'name', 'email', 'password', 'country'
];
protected $hidden = [
'password', 'remember_token',
];
protected $date = ['deleted_at'];
public function client()
{
return $this->hasMany('App\Client', 'user');
}
}
问题解决了
问题解决了,因为我必须编写public$timestamps=false
处于客户端模式。之后,我不需要手动插入
user
值。因为laravel自己在做这个任务,就像我在用户和客户机模型关系中写外键一样。i、 e,返回$this-
我不明白我应该为laravel的这个功能做些什么。我该哭还是该笑?
尝试添加protected$filleble=['email','age']
到您的客户机模型。
更多关于大规模分配
编辑:试试这个
路线:
Route::post('user/{user}/client', 'YourController@store');
控制器:
public function store(Request $request, User, $user){
$user->client()->create([
'user' => $request->user()->id,
'email' => $request->email,
'age' => $request->age
]);
}
对不起,你们的关系错了。而且你正在使用
$request->user()->clients()
而不是
$request->user()->client()
你们关系中的客户是独一无二的。客户端功能体应该是
return $this->hasMany('App\Client', 'user');
在您的客户机模型中添加
$fillable = ['email', 'age', 'user'];
并将客户端模型中的用户函数更改为
public function user()
{
return $this->belongsTo('App\User', 'user');
}
orm应该是这样的
$request->user()->client()->create([
'user' => $request->user()->id,
'email' => $request->email,
'age' => $request->age
]);
问题内容: 我有一些PDF表单,我想用Django Web应用程序中的数据自动填充,然后提供给用户下载。哪个python库可以让我轻松地预填充PDF表单?这些表格旨在打印出来。 问题答案: 如果你要生成非常动态的PDF,并且需要以编程方式控制所有PDF(数据和布局),则Reportlab非常有用。 仅在现有的PDF中填写表格,reportlab是过大的,基本上,你将不得不在reportlab中从头
问题内容: 我有下表,其中的表是空的,我正在尝试填充: 要填充的源数据是我从外部CSV文件填充的临时表: 我想做的是用中的值填充。该字段可以直接复制,但是我不太确定如何获取正确的内容(可以使用tmp_table.langname确定language.id)和(tmp_table.tplname,tmp_table.source,tmp_table.domain一起使用)确定template.id)
问题内容: 就像是有什么,但对?我要显示的数据是使用的关联。 我已经尝试使用过,但是在这种情况下,我必须在hibernate状态下使用它,这需要我指定using,并且每当我检索到through时,列表中的元素之间都会有空格,具体取决于。 我需要自动填充集合,因为我需要在创建时动态生成。当我使用plain时,得到以下内容: 还有其他解决方案吗? 编辑 我正在尝试实现动态表格 问题答案: 您无法在MV
并希望按列表中的值更改行C1-C3。预期产出:
在SpringMVC项目的控制器中,我确实有一个列表,我将其放在模型映射中,如下所示。 现在我想在thymeleaf视图中使用post方法动态填充它。为此,我使用了一个JavaScript脚本。这不是所有的html代码,但为了简单起见,我只添加了JS部分。 这是测试有效的后方法。 它向我显示了错误:错误解析模板[],模板可能不存在或任何已配置的模板解析程序都无法访问,这肯定是因为:。有没有办法动态
我有一个片段,我想创建一个自定义列表视图,但当我发送参数到适配器,它给我的错误。 这是我的代码片段.. 这是我的Mainhome.java 我的错误是...