Sementara pendekatan yang paling umum adalah untuk digunakan Model::select
, itu dapat menyebabkan render semua atribut yang didefinisikan dengan metode accessor dalam kelas model. Jadi, jika Anda mendefinisikan atribut dalam model Anda:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
/**
* Get the user's first name.
*
* @param string $value
* @return string
*/
public function getFirstNameAttribute($value)
{
return ucfirst($value);
}
}
Dan kemudian gunakan:
TableName::select('username')->where('id', 1)->get();
Ini akan menampilkan koleksi dengan keduanya first_name
dan username
, bukan hanya nama pengguna.
Lebih baik digunakan pluck()
, solo atau secara opsional dikombinasikan dengan select
- jika Anda menginginkan kolom tertentu.
TableName::select('username')->where('id', 1)->pluck('username');
atau
TableName::where('id', 1)->pluck('username');
// itu akan mengembalikan koleksi yang hanya terdiri dari username
nilai
Juga, secara opsional, gunakan ->toArray()
untuk mengubah objek koleksi menjadi array.