Laravel REST API何时为值列表创建单独的控制器



假设我有一个简单的API来注册用户。我为每个用户收集基本信息,如:姓名、电子邮件、州、性别、婚姻状况。对于州、性别和婚姻状况,我有一个预先填充了id的数据库表,这样我就可以在下拉列表中显示它们,并让用户选择每一个。

现在,当涉及到注册用户的API控制器时,我应该在一个JSON对象中传递值列表吗?

return response()->json([
'genderList' => Gender::get('id', 'name'),
'stateList'  => State::get('id', 'abbr'),
'maritalList => MaritalStatus::get('id', 'name')
]);

或者,我应该为每一个都返回一个对象的控制器和API调用?

有合适的方法吗?还是个人偏好?

如果这很重要的话,我会用Vue作为我的前端。

这确实是个人的偏好,因为没有做这件事的proper way。请记住将要传递的网络呼叫数和数据库中的命中数。

就我个人而言,我更喜欢使用pluck()方法输出数组:

return response()->json([
'genderList' => Gender::pluck('name', 'id'),
'stateList'  => State::pluck('abbr', 'id'),
'maritalList => MaritalStatus::pluck('name', 'id')
]);

最好缓存这些结果,因为它们可能不会经常改变

最新更新