Apakah peranan $hidden dalam ORM Eloquent laravel?
黄舟
黄舟 2017-05-16 16:48:27
0
3
476

Untuk apa $hidden digunakan? Sebaiknya berikan contoh untuk menerangkan

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

membalas semua (3)
巴扎黑

Dokumentasi sangat jelas dan atribut disembunyikan apabila menukar kepada tatasusunan atau JSON

Kadangkala anda mungkin mahu mengehadkan data atribut yang boleh muncul dalam tatasusunan atau format JSON, seperti medan kata laluan. Cuma tambahkan atribut tersembunyi pada model

class User extends Model { protected $hidden = ['password']; } $user = user::find($userId); dump($user);//里面是木有password字段的
    大家讲道理

    Kadangkala anda mungkin ingin mengehadkan atribut yang disertakan dalam tatasusunan model anda atau borang JSON, seperti kata laluan. Untuk berbuat demikian, tambahkan definisi sifat tersembunyi pada model anda

    class User extends Model { protected $hidden = ['password']; }
      PHPzhong

      Anda boleh menyembunyikan mana-mana kandungan selepas hasil pertanyaan Model toArray(). Penggunaan asas telah diterangkan di atas.
      2 Anda boleh menyembunyikan hubungan yang diperolehi oleh pertanyaan melalui kaedah dengan.
      3 Ia juga boleh digunakan dengan $appends untuk menukar format data pemulangan.
      Sebagai contoh, terdapat jadual Pengguna dan jadual UserInfo Apabila membuat pertanyaan, semua medan Pengguna + medan tertentu ClomnX dalam UserInfo diperlukan. Tetapi saya tidak mahu mengembalikan keseluruhan maklumat UserInfo. (Sudah tentu, ia boleh diproses dengan cara yang lebih mudah dengan membuat pertanyaan dalam pengawal. Saya hanya memberikan contoh pemprosesan bersatu menggunakan Model)

      class User extends Model { protected $hidden = ['userInfo']; protected $appedns = ['ClomnX'] //声明一个关系,user和userInfo是一对一的关系 public function userInfo() { return $this->hasOne(UserInfo::class); } public function getClomnXAttribute() { //判断使用了with方法关联了UserInfo。 if (isset($this->getRelations()[UserInfo])) { return $this->UserInfo->ClomnX; } else return null; }
      class TestController { $user = user::with('userInfo')->find($userId); dump($user->toArray());//返回中没有UserInfo的数组信息,只有其中一个字段。 }

      Ini hanyalah contoh mudah, operasi format yang lebih kompleks juga boleh dilaksanakan melalui kaedah ini. Ia adalah idea yang baik.
        Muat turun terkini
        Lagi>
        kesan web
        Kod sumber laman web
        Bahan laman web
        Templat hujung hadapan
        Tentang kita Penafian Sitemap
        Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!