MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Menggunakan metode kelas Dokumen MongoEngine untuk validasi khusus dan kait pra-penyimpanan

Validasi kustom sekarang harus dilakukan oleh mengimplementasikan clean() metode pada model .

class Essay(Document):
    status = StringField(choices=('Published', 'Draft'), required=True)
    pub_date = DateTimeField()

    def clean(self):
        """
        Ensures that only published essays have a `pub_date` and
        automatically sets the pub_date if published and not set.
        """
        if self.status == 'Draft' and self.pub_date is not None:
            msg = 'Draft entries should not have a publication date.'
            raise ValidationError(msg)

        # Set the pub_date for published items if not set.
        if self.status == 'Published' and self.pub_date is None:
            self.pub_date = datetime.now()

Sunting: Karena itu, Anda harus berhati-hati menggunakan clean() seperti yang dipanggil dari validate() sebelum memvalidasi model berdasarkan aturan yang ditetapkan dalam definisi model Anda.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Metode MongoDB LinQ Select akan benar-benar mengambil hanya sebagian dari bidang?

  2. Jalankan binari mongodb di alpine linux

  3. Bagaimana cara menggunakan referensi db dengan Spring Data MongoDB reaktif?

  4. MongoDb :Bagaimana cara memasukkan objek tambahan ke dalam koleksi objek di golang?

  5. Mengapa saya tidak dapat menemukan catatan dengan _id di mongodb