harvest-vocab

Software screenshot:
harvest-vocab
Rincian Software:
Versi: 0.9.1 Beta 8
Tanggal Upload: 14 Apr 15
Pengembang: Byron Ruth
Lisensi: Gratis
Popularitas: 16

Rating: nan/5 (Total Votes: 0)

panen-vocab adalah aplikasi Harvest Stack menyediakan model abstrak untuk mendefinisikan model kosakata-seperti dan membangun indeks yang sesuai untuk data yang berhubungan dengan diri hirarkis.
Sebagai contoh, ini adalah bagaimana Anda bisa menentukan model untuk menyimpan kode ICD9:
dari vocab.models impor AbstractItem, AbstractItemIndex
Kelas Diagnosis (AbstractItem):
& Nbsp; description = models.CharField (max_length = 50)
& Nbsp; kode = models.CharField (max_length = 10)
& Nbsp; parent = models.ForeignKey ('diri', related_name = 'anak')
Kode ICD9 yang hirarkis sehingga ketika saya mengajukan pertanyaan, "Beri aku semua pasien yang memiliki diagnosis di ICD9 367 (Gangguan refraksi dan akomodasi)", maka ini harus tidak hanya permintaan 367, tapi semua diagnosa keturunan juga (yang mencakup lain 2 tingkat).
Semacam ini permintaan menjadi sulit untuk menulis karena Anda hanya memiliki akses ke orang tua langsung dari diagnosis tertentu, sehingga permintaan akan terlihat seperti ini.
dari django.db.models impor Q
Diagnosis.objects.filter (Q (code = '367') | Q (parent__code = '367'))
Masalah yang jelas di sini adalah bahwa setiap diagnosa 2 + tingkat turun dari '367' tidak termasuk.
Buat Index datar
Untuk mengatasi masalah ini, sebuah subclass AbstractItemIndex dapat didefinisikan yang akan membangun indeks datar untuk subclass AbstractItem. Cukup mendefinisikannya seperti ini:
Kelas DiagnosisIndex (AbstractItemIndex):
& Nbsp; item = models.ForeignKey (Diagnosis, related_name = 'item_indexes')
& Nbsp; parent = models.ForeignKey (Diagnosis, related_name = 'parent_indexes')
# Membangun indeks untuk Diagnosis
DiagnosisIndex.objects.index ()
Baris terakhir menghasilkan indeks datar hirarki yang meredakan masalah kedalaman yang tidak diketahui. Jadi sekarang, pertanyaan yang sama disebutkan di atas dapat dijawab dengan cara ini:
# Baik item memiliki kode ini atau salah satu dari orang tua itu telah kode ini
Kondisi = Q (item__code = '367') | Q (parent__code = '367')
item_ids = DiagnosisIndex.objects.filter (kondisi) .values_list ('item__id', flat = True)
diagnosis = Diagnosis.objects.filter(id__in=item_ids)

Requirements:

  • Python

Perangkat lunak lain dari pengembang Byron Ruth

django-avocado
django-avocado

14 Apr 15

django-forkit
django-forkit

11 May 15

django-redcap
django-redcap

15 Apr 15

django-tracking2
django-tracking2

14 Apr 15

Komentar untuk harvest-vocab

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!