привет, я хочу построить систему комментариев в моих компонентах projectDetail, но при попытке сохранить комментарий в БД появляется ошибка [1048 Столбец 'commentable_id' не может быть пустым], это мой ProjectDeatil. vue скрипт:
<script>
export default {
data(){
return{
key: this.$route.params.id,
projets:[],
projet:{
id:'',
name:'',
durre:'',
description:'',
budget:'',
owner:'',
},
membres:[],
membre:{
id :'',
membre:'',
projet_id:'',
},
form : new Form({
id:'',
body:''
})
}
},
methods:{
afficherProjets(){
axios.get('/api/getProjects')
.then(({data}) => {this.projets=data.data});
},
afficherMembre(){
axios.get('/api/membreid').then(({data})=> {this.membres =data.data});
},
ajouterCommentaire(){
this.form.post('/api/comments/'+this.key).then(()=>{
this.form.reset()})
}
},
mounted() {
console.log('Component mounted.')
this.afficherProjets();
this.afficherMembre();
}
}
</script>
и это моя функция CommentController:
public function store($key){
//$data =$request->all();
$projet=new Projet;
$commentaire =new Commentaire;
$commentaire->user_id= auth()->user()->id;
$commentaire->body= request('body');
$commentaire->commentable_id = $key;
$projet->comments()->save($commentaire);
}
и это моя функция в комментарии к модели:
public function commentable(){
return $this->morphTo();
}
и эта моя функция в модельном проекте:
public function comments(){
return $this->morphMany('App\Commentaire','commentable')->latest();
}
и это мой маршрут:
Route::post('/comments/{key}', 'API\CommentController@store');