我的 Laravel 5.2 应用程序具有以下结构:
用户: id 姓名...
帖子:id 标题正文 user_id (fk)
评论:id body user_id (fk) post_id (fk)
我想创建几个用户(20),为每个用户创建随机数量的帖子,并为每个帖子创建随机数量的评论(即使是固定数量也可以)。
我可以创建用户并为每个用户分配帖子,但我无法为每个帖子分配评论:我有这个:
factory(App\User::class, 20)->create()->each(function($u) {
$u->posts()->saveMany(factory(App\Post::class, 5)->make();
});
Run Code Online (Sandbox Code Playgroud)
我发现了一些东西但没有用:
factory(App\Comment::class, 100)->create()->each(function($u) {
$u->user()->sync(
App\User::all()->random(3)
);
});
Run Code Online (Sandbox Code Playgroud)
注意:我在模型之间建立了这样的关系:用户有很多帖子,用户有很多评论,帖子有很多评论,评论属于帖子,评论属于用户
从Laravel 5.2附带的默认auth和register sistem,Just做了一个简单的视图,可以是欢迎页面,并包含登录和注册表单.此时,如果按下任何按钮,则验证将检查并查找两个表单中的错误,并突出显示所有这些表单中所需的错误.那么包含它们的最佳解决方案是什么,也许每个都有单独的验证?
我试图将默认登录系统更改为与寄存器表单输入名称不同,但我认为有一个链,由于验证并将输入值添加到数据库中.
<div class="form-group{{ $errors->has('login_email') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="login_email" value="{{ old('login_email') }}">
@if ($errors->has('login_email'))
<span class="help-block">
<strong>{{ $errors->first('login_email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('login_password') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="login_password">
@if ($errors->has('login_password'))
<span class="help-block">
<strong>{{ $errors->first('login_password') }}</strong>
</span>
@endif
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
可以看出,只需将电子邮件和密码输入名称从"email"更改为"login_email",将"password"更改为"login_password"
欢迎任何快速有效的解决方案/想法
在我的JavaScript中,我有:
data: {
rooms: [
{type: 'single'},
{type: 'double'}
...
],
selectedSingle: 0,
selectedDouble: 0,
...
},
computed: {
capitalize: function(string) {
return string.charAt(0).toUpperCase() + string.slice(1);
}
}
Run Code Online (Sandbox Code Playgroud)
在HTML中,我有:
<li v-for="(room, index) in rooms">
<input type="number" v-model="'selected' + capitalize(room.type)">
</li>
Run Code Online (Sandbox Code Playgroud)
问题是我找不到以这种方式访问模型的方法,而我现在看到的唯一方法是销毁v-for并手动进行创建,但这不是最佳的解决方案,因为我有很多“房间”。任何想法都欢迎。