我正在使用this package从用户那里获得费率,这对我来说产品/帖子非常合适,但是当我的数据库中没有记录时我会遇到问题!
通常情况下,当您想要评价时,您将评价数据库中存在的记录,例如存在的帖子或存在的产品,并通过给出开始/费率来表达自己的记录。现在我想使用这个系统来存在一些不存在的东西,例如testimonial
意味着:人们写下他们的推荐信并给出明星然后保存它,这里我得到错误
约束违规:1048列'rateable_id'不能为空
这只是因为这个包试图在不存在的情况下获得推荐的id,所以我需要一个解决方案来保存两者。
<form class="poststars" action="{{route('testimonialsStar')}}" id="addStar" method="POST">
{{ csrf_field() }}
{{Form::label('comment', 'Comment', array('hidden'))}}
{{Form::textarea('comment', null, array('class' => 'form-control'))}}
<span style="padding-top: 20px !important;vertical-align: -moz-middle-with-baseline;padding-left: 4%;color: #fff;">give rate</span>
<input class="star star-5" value="5" id="star-5" type="radio" name="star"/>
<label class="star star-5" for="star-5"></label>
<input class="star star-4" value="4" id="star-4" type="radio" name="star"/>
<label class="star star-4" for="star-4"></label>
<input class="star star-3" value="3" id="star-3" type="radio" name="star"/>
<label class="star star-3" for="star-3"></label>
<input class="star star-2" value="2" id="star-2" type="radio" name="star"/>
<label class="star star-2" for="star-2"></label>
<input class="star star-1" value="1" id="star-1" type="radio" name="star"/>
<label class="star star-1" for="star-1"></label>
<button type="submit" class="btn btn-success" name="submit">Send</button>
</form>
//Testimonial Rating System
Route::post('/ratingtes', 'IndexController@testimonialsStar')->name('testimonialsStar');
Route::get('/writetestimonials', 'IndexController@testimonialsds')->name('testimonialsindex');
public function testimonialsStar (Request $request, Testimonial $testimonial) {
$rating = new Rating;
$rating->user_id = \Auth::id();
$rating->rating = $request->input('star');
$rating->comment = $request->input('comment');
$rating->rateable_id = str_random(40);
$testimonial->ratings()->save($rating);
return redirect()->back();
}
public function testimonialsds () {
return view('frontend.testimonials');
}
感谢。