【问题标题】:Passing multiple variable with axios to controller laravel使用 axios 将多个变量传递给控制器​​ laravel
【发布时间】:2019-08-28 22:06:51
【问题描述】:

我正在尝试在学生表中插入一个讲座 ID。我需要将学生的 ID 以及讲座的 ID 传递给控制器​​。我正在使用 axios 将 2 个参数发布到控制器。我的代码不起作用,我做错了吗? Laravel 中的新功能。谢谢

Vue 组件

<a href="" @click="setLectureFK(student.student_id)"><i class="fas fa-user-plus"></i></a>


<script>
export default {
    data () {
        return {
        student:'',
        lecture_id:this.$route.params.id,
        }
    },
    methods:{
        setLectureFK($student_id){
             axios.post('/api/internship/setLecture/'+$lecture_id,'/'+$student_id);
        }
    },
}

控制器

public function setLecture($lecture,$student)
{
    $student = student::findOrFail($student);
    $student->lecture_id_FK = $lecture;
    $student->save();
}

API.PHP

Route::post('internship/setLecture/{lecture}/{student}', 'API\InternshipController@setLecture')->name('internship.setLecture');

【问题讨论】:

  • 那你有什么问题?
  • @ashokpoudel 它不起作用。我认为我犯了错误。

标签: php laravel eloquent axios


【解决方案1】:

据我所知,您的 vue 组件中存在语法错误。
在这一行

axios.post('/api/internship/setLecture/'+$lecture_id,'/'+$student_id);

你用逗号代替了+,应该是这样的

 axios.post('/api/internship/setLecture/'+$lecture_id+'/'+$student_id);

【讨论】:

    【解决方案2】:

    试试这个:

    Vue 组件

    <a href="" @click="setLectureFK(student.student_id)"><i class="fas fa-user-plus"></i></a>
    
    
    <script>
    export default {
        data () {
            return {
            student:'',
            lecture_id:this.$route.params.id,
            }
        },
        methods:{
            setLectureFK(student_id){
                 axios.post('/api/internship/setLecture',{student_id:student_id,lecture_id:this.lecture_id});
            }
        },
    }
    

    控制器

    public function setLecture(Request $request)
    {
        $student = student::findOrFail($request->student_id);
        $student->lecture_id_FK = $request->lecture_id;
        $student->save();
    }
    

    api.php

    Route::post('internship/setLecture', 'API\InternshipController@setLecture')->name('internship.setLecture');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-06
      • 2019-09-10
      • 2018-04-24
      • 1970-01-01
      • 2021-12-30
      • 2014-08-29
      • 1970-01-01
      相关资源
      最近更新 更多