Class Field

Class Field adalah class dasar untuk semua kolom yang ditentukan pada pesan. Class ini tidak dapat diperluas oleh developer.

Field disediakan oleh modul protorpc.messages.

Konstruktor

Konstruktor class Field didefinisikan sebagai berikut:

class  Field (message_type, number, [required=False | repeated=False], variant=None, default=None)

Menginisialisasi instance Field. Setiap sub-class Field harus menentukan hal berikut:

VARIANTS
Kumpulan jenis varian yang diterima oleh kolom tersebut.
DEFAULT_VARIANT
Jenis varian default jika tidak ditentukan di konstruktor.
Argumen
number
Jumlah kolom. Harus unik per class pesan.
required=False
Kolom ini wajib diisi atau tidak. Tidak dapat muncul bersamaan dengan argumen repeated; jangan tentukan repeated jika Anda menggunakan required.
repeated=False
Kolom ini diulang atau tidak. Tidak dapat muncul bersamaan dengan argumen required; jangan tentukan required=True jika Anda juga menggunakan repeated=True.
variant=None
Memberikan informasi encoding tambahan yang umumnya digunakan oleh buffering protokol. Varian ini dipetakan ke nilai Type di descriptor.proto. Praktik terbaiknya adalah menggunakan nilai default, tetapi Anda dapat menentukan nilai sebagai 32-bit, 64-bit, tidak bertanda tangan, dll.
default=None
Nilai default untuk kolom jika tidak ditemukan dalam permintaan dasar.

Catatan: Nilai default tidak diizinkan untuk kolom berulang atau kolom pesan.

Pengecualian berikut muncul:

Properti Class

Class FieldList memiliki satu properti:

default()
Nilai default untuk kolom.

Metode Instance

Instance FieldList memiliki metode berikut:

validate(value)
Memvalidasi nilai yang ditetapkan ke kolom. Argumen
value
Nilai yang perlu dievaluasi.

Memunculkan ValidationError jika nilainya bukan jenis yang diharapkan.

validate_default_element(value)

Memvalidasi nilai yang ditetapkan ke kolom default. Khusus untuk satu elemen.

Beberapa kolom mungkin mengizinkan penundaan resolusi jenis default yang diperlukan dalam kasus referensi definisi melingkar. Dalam hal ini, nilai default-nya mungkin berupa placeholder yang diselesaikan jika diperlukan setelah semua class pesan ditentukan.

Argumen
value
Nilai default untuk memvalidasi.

Memunculkan ValidationError jika nilainya bukan jenis yang diharapkan.

validate_default(value)

Memvalidasi nilai default kolom.

Argumen
value
Nilai default untuk memvalidasi.

Memunculkan ValidationError jika nilainya bukan jenis yang diharapkan.

message_definition()

Mendapatkan definisi pesan yang berisi definisi Field ini. Menampilkan definisi untuk objek Message yang berisi Field. Menampilkan None jika Field ditentukan di luar class pesan.

Memunculkan ValidationError jika nilainya bukan jenis yang diharapkan.