Django-kegiatan-stream adalah cara untuk menciptakan kegiatan yang dihasilkan oleh tindakan di situs Anda & nbsp;. Peristiwa Kegiatan dikategorikan berdasarkan tiga komponen utama.
& Nbsp; * Aktor. Objek yang dilakukan tindakan.
& Nbsp; * Verb. Kata kerja frase tindakan yang dilakukan.
& Nbsp; * Target. (Pilihan) Objek yang verba diundangkan pada.
Aktor dan Target GenericForeignKeys untuk setiap objek Django sewenang-wenang. Sebuah kegiatan adalah deskripsi dari suatu tindakan yang dilakukan (Verb) di beberapa instan dalam waktu oleh beberapa Acor, dengan beberapa target opsional.
Nomenklatur spesifikasi ini didasarkan pada Atom Activity Extension.
Instalasi:
Tambahkan actstream ke INSTALLED_APPS Anda:
INSTALLED_APPS = (
& Nbsp; ...
& Nbsp; 'actstream',
& Nbsp; ...
)
Tambahkan url kegiatan:
urlpatterns = pola ('',
& Nbsp; ...
& Nbsp; ('^ aktivitas /', termasuk ('actstream.urls')),
& Nbsp; ...
)
Membangkitkan Tindakan
Membangkitkan tindakan yang mungkin paling baik dilakukan dalam sinyal yang terpisah:
dari django.db.models.signals impor pre_save
dari actstream tindakan impor
dari myapp.models impor MyModel
def my_handler (pengirim, ** kwargs):
& Nbsp; action.save (pengirim, kata kerja = 'diselamatkan')
pre_save.connect (my_handler, pengirim = MyModel)
Untuk menghasilkan suatu tindakan di mana saja dalam kode Anda, cukup mengimpor sinyal tindakan dan mengirimkannya dengan aktor, kata kerja, dan target Anda:
dari actstream tindakan impor
action.send (request.user, kata kerja = 'mencapai level 10')
action.send (request.user, kata kerja = 'bergabung', target = kelompok)
Setelah Aktor
Menghasilkan hubungan antara Pengguna dan setiap Aktor tertentu semudah memanggil fungsi:
dari actstream impor follow
ikuti (request.user, kelompok)
Anda juga bisa hanya membuat permintaan GET ke tampilan actstream_follow:
GET / kegiatan / ikuti /
Kemudian saat login pengguna akan mengikuti aktor didefinisikan oleh content_type_id & object_id. Opsional parameter berikutnya adalah URL untuk mengarahkan ke.
Kegiatan Feed
Daftar kegiatan yang tersedia untuk beberapa sudut pandang. Semua diurutkan menurut -timestamp:
dari actstream impor actor_stream, user_stream, model_stream
Kegiatan oleh aktor:
actor_stream (aktor)
Kegiatan oleh Django Model:
model_stream (model)
Kegiatan dari pelaku bahwa pengguna tertentu folowing:
user_stream (user)
Persyaratan :
- Python
- Django
Komentar tidak ditemukan