Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 如何使用axios从数据库获取数据_Database_Laravel_Vue.js_Controller - Fatal编程技术网

Database 如何使用axios从数据库获取数据

Database 如何使用axios从数据库获取数据,database,laravel,vue.js,controller,Database,Laravel,Vue.js,Controller,我有个问题 我有我想要的项目列表当我点击一个项目时,他会带我到另一个页面(组件)这是组件项目详细信息当我可以在其中找到该项目的详细信息时,我有以下代码块: 这是将我带到其他组件的路线: {path: '/detail/:id', name: detail , component: detail }, 我想从DB w获取url详细信息中id为的项目,但什么也没有发生这是ProjectDetail.vue: export default { data(){ return{

我有个问题

我有我想要的项目列表当我点击一个项目时,他会带我到另一个页面(组件)这是组件项目详细信息当我可以在其中找到该项目的详细信息时,我有以下代码块: 这是将我带到其他组件的路线:

 {path: '/detail/:id', name: detail , component: detail },
我想从DB w获取url详细信息中id为的项目,但什么也没有发生这是ProjectDetail.vue:

export default {
      data(){
      return{
      id: this.$route.params.id,
    projets:[],
   projet:{
    id:'',
   name:'',
     durre:'',
  description:'',
      budget:'',
  owner:'',
      }
   }
 },
      methods:{ 
    afficherProjets(){
       axios.get('api/getProjects/'+this.id)
         .then(data => {
           this.projets = data.data;
               });
                  }
           },
          mounted() {
           console.log('Component mounted.')
           this.afficherProjets();
        }
           }
这是我的控制器:

 public function getProjects($id)
{
   return Projet::findOrFail($id);
}
在你的vue里

export default {
  data(){
   return{
    id: this.$route.params.id,
    projet:{}
  }
},
methods:{
 //GETID
 afficherProjet(){
   axios.get('api/getProject/'+this.id)
      .then(data => {
              this.projet = data.data;
           });
 }
},
mounted() {
  console.log('Component mounted.')
  this.afficherProjet();
}
routes api.php中的文件

//ALL
Route::get('getProjects', ['uses' =>'API\ProjetController@getProjects']);
//SPECIFIQ ID
Route::get('getProject/{id}', ['uses' =>'API\ProjetController@getProject']);
在控制器中,使用app/Http/API/ProjetController

public function getProjects()
{
   return Projet::latest()->paginate(15);
}

public function getProject($id)
{
  return Projet::findOrFail($id);
}
你的模型飞机

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Projet extends Model
{
   public $timestamps = false;

   protected $table = 'projets';

   protected $fillable = [
     'name',
     'durre',
     'description',
     'budget',
     'owner'
   ];
}

您是否在浏览器开发工具中检查了控制台中的任何JavaScript错误或从API返回的HTTP响应中的任何错误?没有错误,他显示项目:开发工具中未定义您应该将
{data}
替换为
响应
并记录它。我的猜测是,您应该使用
this.project=data
。注释不用于扩展讨论;这段对话已经结束。