OctoberCMS:在一个 API 端点中设置多个模型

Posted

技术标签:

【中文标题】OctoberCMS:在一个 API 端点中设置多个模型【英文标题】:OctoberCMS: set multiple models in one API endpoint 【发布时间】:2018-10-21 08:57:57 【问题描述】:

我使用 OctobderCMS 为移动应用程序构建后端,并且需要为应用程序提供 API,我有大约 15 个模型并希望为这些模型提供 2 个 API 端点, 一个端点用于 2-3 个模型,另一个端点用于其余模型。

我能做到吗?

【问题讨论】:

但是,这已在下面得到解答和解决。检查我的链接问题并回答我所做的事情。它一步一步的回答。 ***.com/a/40625088/6829420 。希望这会有所帮助。 【参考方案1】:

当然可以,您可以使用 OctoberCMS 的所有型号制作 API。

您必须在所有模型所属的 Plugin 目录中创建 routes.php 文件。在routes.php 文件中,您必须使用查询来维护您的结果。

routes.php 文件示例如下:

<?php

//Here you have to define your route.
Route::get('api/v1/your_route', function () 
    $result = [];    //define a variable as array

    $wartaProfiles= \WartaProfil::where('id','1')->get();;
    $jadwalKeb = \JadwalKeb::all();

    $result['wartaProfiles'] = $wartaProfiles;
    $result['jadwalKeb'] = $jadwalKeb;
    return $result;
);

我有两个模型 RecipeCategory 所以我混合了两个模型结果 $result 并返回它。 现在您可以定义您的模型并执行您想要的任何结果。

有关从模型中检索结果的更多信息,请访问Retrieving multiple models。

这都是我的一面。希望这会帮助你。

如果您有任何疑问,请发表评论。

【讨论】:

我知道routes.php 用于API,但我不知道如何为多个模型定义函数我发现了这个Response::Json($model) 所以如何定义多个模型.. @IsralBustami 我已经用一个例子更新了我的答案。检查一下 我已经更新了我的答案。不要忘记为您的模型定义路径,例如 \Horizonstack\Blwapp\Models\Category 我的模型路径。 JSON 方法会自动将 Content-Type 标头设置为 application/json,并使用 json_encode PHP 函数将给定数组转换为 JSON。而且您的所有结果都在 $result 中,因此您必须定义 $result。 不,您可以添加多个模型以获得您想要的结果。没有限制:)

以上是关于OctoberCMS:在一个 API 端点中设置多个模型的主要内容,如果未能解决你的问题,请参考以下文章

OctoberCMS - 具有多对多关系的模型查询

OctoberCMS (Laravel) + Vue.js + Tailwind CSS 最佳设置

OctoberCMS:如何仅将 javascript 从组件添加到页面一次

OctoberCMS:如何在 Rainlab.User 插件中通过电子邮件设置用户帐户激活?

CORS Vue 和 OctoberCMS

OCTOBERCMS 形式和模型