【问题标题】:Show badge when value is exists Laravel当值存在时显示徽章 Laravel
【发布时间】:2021-09-07 18:22:23
【问题描述】:

我有 2 个表格:standardsquestions,其中问题的 standart_id 与标准的 id 相同。

当当前数据等于标准的id 时,我想用徽章显示状态是填充还是空。如何做到这一点?

我已尽力寻找一些参考资料,但没有找到我想要的。

这是我的刀片:

    @foreach($standarts as $v)
        <tr>
            <td>Standart {{$v->id}}</td>
            <td class="text-capitalize">{{$v->name}}</td>
            <td>{{$v->year}}</td>
            <td class="text-capitalize">{{$v->type}}</td>
            @if($check == null)
                <td>
                    <span class="badge bg-danger tips"
                          data-bs-toggle="popover" title="Empty">
                        Empty
                    </span>
                </td>
            @else()
                <td>
                    <span type="button" class="badge bg-danger tips"
                          data-bs-toggle="popover" title="Filled">
                        Filled
                    </span>
                </td>
            @endif
        </tr>
    @endforeach

型号:

    public function index(Question $question)
    {
        $standarts = DB::table('standarts')
            ->select(DB::raw('DATE_FORMAT(created_at,"%Y") as year, id, user_id, type, name'))
            ->get();

        $check = Question::where('standart_id', '=', Standart::get('id'))->first();

        return view('admin.dashboard', compact('standarts', 'check'));
    }

【问题讨论】:

  • 你说的“填充还是空”是什么意思?
  • 跨度徽章,我有“填充跨度徽章”和“空跨度徽章”
  • 是的,但是这两个术语在您的案例中是如何定义的?如何确定?
  • 当问题表中的“standart_id”等于标准表中的“id”时
  • 因为标准里面有很多问题

标签: php laravel laravel-blade laravel-8


【解决方案1】:

使用雄辩的关系:

class Standart extends Model
{
    public function questions()
    {
        return $this->hasMany(Question::class);
    }
}

控制器:

public function index(Question $question)
    {
        $standarts = Standart::with(['questions'])->get();

        return view('admin.dashboard', compact('standarts'));
    }

刀片视图:

    @foreach($standarts as $v)
        <tr>
            <td>Standart {{$v->id}}</td>
            <td class="text-capitalize">{{$v->name}}</td>
            <td>{{$v->year}}</td>
            <td class="text-capitalize">{{$v->type}}</td>
            @if(!$v->questions->count())
                <td>
                    <span class="badge bg-danger tips"
                          data-bs-toggle="popover" title="Empty">
                        Empty
                    </span>
                </td>
            @else()
                <td>
                    <span type="button" class="badge bg-danger tips"
                          data-bs-toggle="popover" title="Filled">
                        Filled
                    </span>
                </td>
            @endif
        </tr>
    @endforeach

【讨论】:

  • 我得到了未定义的变量:标准
  • 现在我得到了Undefined property: stdClass::$questions
  • 应该工作......我更新了我的答案。现在可以用了吗?
猜你喜欢
  • 2014-07-29
  • 2019-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-04
  • 1970-01-01
  • 2019-01-29
  • 1970-01-01
相关资源
最近更新 更多