簡體   English   中英

Laravel 5 - 更改表列中的所有值

[英]Laravel 5 - Change all values in a Column of a table

我有一個名為“estado”的列的表,我想一次性更改所有列。

這是正確的方法嗎? 那個更快?

$vendedor = Vendedor::with('produtos')->find( $idVendedor );

    foreach ( $vendedor->produtos as $produto ) {
        $produto->pivot->estado = $novoEstado;
    };

我要更改的列是“estado”。 有沒有辦法做到這一點沒有foreach?

最簡單的方法是為此使用查詢構建器(而不是您的模型)

DB::table('table_name')->where('vendedor_id', $idVendedor)->update('estado', $novoEstado);

使用 Laravel eloquent 更新您要更新的特定列。

方式 -> 1

[狀態->要更新的列]

Model::where('status', '=', 1)->update(['status' => 0]);

方式 -> 2

[狀態->要更新的列]

$allData = Model::where('status', 1)->get();
                foreach ($allData as $data){
                    $data->status = 0;
                    $data->update();
                }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM