[英]Laravel & vue.js values to array
我在Laravel中使用vue.js。
我有3張桌子。
Article
Location
article_location (pivot table)
如果我想將位置信息轉換為json,以便可以將其傳遞給vue,我該怎么做?
<div class="container">
Location->article //all articles of a location to json
<template id="ln-data">
<ul>
<li v-for="value in list">
@{{ value.name }}
</li>
</ul>
</template>
<script>
Vue.config.debug = true;
Vue.component('data', {
template: '#ln-data',
props:['list'],
created() {
this.list = JSON.parse(this.list);
}
})
new Vue({
el: 'body'
});
</script>
我該怎么辦?
編輯-
控制器:
$location = location::all();
return view('locationproducts')->with('location',$location);
視圖:
<div class="container">
<data list="{{ $location->article()->toJson() }}"></data>
</div>
位置模型:
public function article()
{
return $this->belongsToMany('App\article','article_location');
}
錯誤:
Macroable.php第81行中的ErrorException:方法文章不存在。 (查看:/home/vagrant/Code/project/resources/views/locationproducts.blade.php)
您可以使用toJson()
方法將模型轉換為JSON,也可以使用toJson
方法。 與toArray
一樣, toJson
方法是遞歸的,因此所有屬性和關系都將轉換為JSON:
$location->articles()->toJson();
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.