Laravel-选择要在表中显示的数据

时间:2018-12-03 11:32:42

标签: php mysql laravel laravel-5 eloquent

我想问问是否可以限制表中的数据。我想从我的6个数据中删除一个数据。

这是我的桌子

现在我要删除第3行,即 SESSION_VALIDITY (SESSION_VALIDITY ),如何删除该数据并将其仅保留为表中的5个数据?我想限制我的数据,因为我不需要查看SESSION_VALIDITY。帮助谢谢

我的 索引

 @foreach ($settings as $setting)
                <tr>
                    <td>{{ $setting->settings_code }}</td>
                    <td>{{ $setting->subject}}</td>
                    <td>{{ $setting->description }}</td>

                    <td><a href="/admin/settings/{{ $setting->id }}/edit" class="fa fa-edit btn btn-info"></a></td>
                </tr>      
                @endforeach

我的 控制器

 public function index()
{
    $settings = Setting::all();
    return view('admin.settings.index', compact('settings'));
}

4 个答案:

答案 0 :(得分:0)

您应该在控制器中过滤查询。

您应该使用:

代替Setting::all()
$settings = Setting::where('settings_code', '!=', 'SESSION_VALIDITY')->get();

答案 1 :(得分:0)

如果只不想在$ settings数据中显示该行,则可以使用这样的查询将其排除。

public function index()
{
    $settings = Setting::where('settings_code', '<>', 'SESSION_VALIDITY')->get();
    return view('admin.settings.index', compact('settings'));
}

如果要完全删除它,可以运行一次功能以从表中删除该行。

public function deleteSessionValidity()
{
    $setting = Setting::where('settings_code', 'SESSION_VALIDITY')->first();
    $setting->delete();
}

答案 2 :(得分:0)

您应该尝试以下操作:

public function index()
{
    $settings = Setting::where('settings_code', '!=', 'SESSION_VALIDITY')->get();
    return view('admin.settings.index', compact('settings'));
}

OR

 @foreach ($settings as $setting)
                <tr>
                 @if($setting->settings_code != "SESSION_VALIDITY")
                    <td>{{ $setting->settings_code }}</td>
                    <td>{{ $setting->subject}}</td>
                    <td>{{ $setting->description }}</td>

                    <td><a href="/admin/settings/{{ $setting->id }}/edit" class="fa fa-edit btn btn-info"></a></td>
                 @endif
                </tr>      
                @endforeach

答案 3 :(得分:0)

foreach内放if语句

喜欢:

@foreach ($settings as $setting)
    @if ($setting->settings_code != "SESSION_VALIDITY")

     your <td> here

    @endif
@endforeach