小编Ahm*_*aza的帖子

Laravel:如何使用whereIn方法获得自定义排序的eloquent集合

我有一系列产品ID,我需要检索模型集合.数组是这样的:

$ids = array(9, 2, 16, 11, 8, 1, 18);
Run Code Online (Sandbox Code Playgroud)

现在,我正在使用以下代码行来获取集合.

$products = Product::whereIn('id', $ids)->get();
Run Code Online (Sandbox Code Playgroud)

但它根据他们的ID对产品进行了分类.如:1, 2, 8, 9, 11, 16, 18.我需要的是与$ids数组中相同的顺序即9, 2, 16, 11, 8, 1, 18.

我该怎么做以获得与数组中相同的顺序?

php mysql collections laravel laravel-5

6
推荐指数
1
解决办法
434
查看次数

Axios 不发送带有标头的 XSRF 令牌

我正在将基于 Vue JS(Quasar 框架)的 SPA 与 API 集成。该 API 是在 Laravel 中构建的,并使用 CSRF 的 sainttum。

当我向 sainttum 端点发送请求时,https://someweburl.com/sanctum/csrf-cookie它正确地将 XSRF-TOKEN 作为 cookie 发送。但是当我发送 POST 请求时,X-XSRF-TOKEN 没有将其自身附加到标头中。我收到“令牌不匹配”错误。

前端位于我的 localhost:8080 上,而 API 位于 url 上。我无法直接访问 Laravel 项目,只能访问 API。

以下是我的 axios 配置

import Vue from 'vue';
import axios from 'axios';

Vue.prototype.$axios = axios;

const apiBaseUrl = "https://someweburl.com";
const api = axios.create({ baseURL: apiBaseUrl });

api.defaults.withCredentials = true;

Vue.prototype.$api = api;
Vue.prototype.$apiBaseURL = apiBaseUrl;


export { axios, api, apiBaseUrl }
Run Code Online (Sandbox Code Playgroud)

以下是我试图实现的请求格式,即获取 CSRF 后的 …

csrf laravel vue.js axios laravel-sanctum

3
推荐指数
2
解决办法
4129
查看次数

标签 统计

laravel ×2

axios ×1

collections ×1

csrf ×1

laravel-5 ×1

laravel-sanctum ×1

mysql ×1

php ×1

vue.js ×1