我正在开发一个角色扮演游戏。下面我有一个政府控制人。我想做的是获取例如上级政府成员,高级政府成员和初级政府成员(这些是不同类型的政府成员)的列表...

这是我的数据库结构


初级政府将担任部长
高级政府将担任国务卿
高级政府将是总理和王室


我有一个名为srp_rp_stats的角色扮演统计表,在其中有一个名为government_id的列,该列旨在与government表中的ID匹配。

在我的government表中,我有一个id字段作为主键,一个title是政府职位,而type是。 type字段是一个枚举,下面是示例...

government_type enum
'higher_government','senior_government','junior_government'


我在下面要做的是获取每个政府组的成员,但是我需要使用government_id表中的rp来检查government表中的类型实际上就是我的身份寻找,我该怎么办?

码:

namespace App\Http\Controllers\Frontend\User;

use Auth;
use Cache;
use Illuminate\Http\Request;
use App\Database\Website\Roleplay\Life\LifeEvents;

class GovernmentController
{
    public function getView()
    {
        $higherGovernment = Cache::remember('government.higher_government', function() {
            return Roleplay::get();
        });

        $seniorGovernment = Cache::Remeber('government.senior_government', function() {
            return Roleplay::get();
        });

        $juniorGovernment = Cache::remember('government.junior_government', function () {
            return Roleplay::get();
        });

        return view('frontend.community.government', compact('higherGovernment', 'seniorGovernment', 'juniorGovernment'));
    }
}

最佳答案

我认为您最好使用Eloquent,不确定使用哪个版本或Laravel,但是这里是5.3 Eloquent的指南:
https://laravel.com/docs/5.3/eloquent

$higherGovernment = Goverment::where('government_type', 'higher_government')->get();


这将为您提供在类型字段中具有“上级政府”的所有条目。

10-06 16:03