Menggunakan Kelas Entiti Doktrin untuk Paparan Pangkalan Data dalam Symfony 2
Dalam senario di mana anda mempunyai jadual paparan dan keinginan untuk mendapatkan semula data untuk kelas entiti tanpa perlu menyimpan operasi, adalah mungkin untuk menubuhkan kelas entiti khusus untuk tujuan ini.
Menyediakan Kelas Entiti untuk Paparan
Untuk mencipta kelas entiti yang mendapatkan semula data daripada paparan pangkalan data dalam Symfony 2, ikuti ini langkah:
-
Tandai Entiti sebagai Baca Sahaja:
Nyatakan entiti sebagai baca sahaja dengan menambahkan @ORMEntity(readOnly=true) pada definisi kelas. Ini memastikan entiti tidak boleh diubah suai dan digunakan semata-mata untuk tujuan membaca.
-
Tentukan Pembina Persendirian:
Tetapkan pembina kepada peribadi (cth., fungsi persendirian __construct() {} ), mengehadkan penciptaan contoh kepada Doktrin. Ini menghalang penciptaan objek secara tidak sengaja oleh kod luaran.
-
Tentukan Maklumat Jadual:
Gunakan anotasi @ORMTable untuk menentukan nama jadual yang sepadan dengan paparan. Contohnya, @ORMTable(name="your_view_table").
Contoh Kelas Entiti
Di bawah ialah contoh kelas entiti yang mengikut garis panduan yang dinyatakan di atas:
<code class="php"><?php
/**
* @ORM\Entity(readOnly=true)
* @ORM\Table(name="your_view_table")
*/
class YourEntity {
private function __construct() {}
}</code>
Salin selepas log masuk
Pertimbangan Tambahan
Jawapan yang diterima memberikan penyelesaian yang sesuai. Walau bagaimanapun, pertimbangkan cadangan tambahan ini:
- Tandai entiti sebagai baca sahaja untuk menjelaskan tujuannya sebagai kelas akses data.
- Gunakan pembina peribadi untuk mengehadkan penciptaan objek kepada Doktrin, meningkatkan keselamatan dan kawalan.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menggunakan Kelas Entiti Doktrin untuk berinteraksi dengan paparan pangkalan data dalam Symfony 2 tanpa menyimpan data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!