Django sessiya-faylları Django faylları ilə işləmək məqsədi bir Django app edir.
Əsasən faylları ilə iş bir neçə fərqlər istisna olmaqla, adi yüklenenler ilə iş kimi eyni:
- Əlavələr onlar qəbul müştərilər üçün "aid". Başqa sözlə, qoşmalar ictimaiyyətə özəl və əlçatmaz olmalıdır.
- Əlavələr "paketləri" təşkil edilir. Müştəri tətbiqi müxtəlif yerlərində müxtəlif əlavə dəstləri ilə işləmək üçün qərar, əgər mənada edir (məsələn, o / o alıcılar arasında onun / onun əlavə bölüşmək istəmir açıq-aydın simultaniously neçə e-poçt və ya sorğu yazır və s.)
- Əlavələr keçicidir. Əl və ya vaxtından faylları aradan qaldırılması üçün asan üsulları var olmalıdır.
- Əlavələr hətta unauthenticated istifadəçilər üçün yararlı olmalıdır. Bu, bizim xüsusiyyətləri ilə bağlıdır. Bu da biz bu app yaratmışdır niyə əsas səbəbi deyil.
- Bu, eyni paketi eyni adı ilə iki faylları saxlamaq mümkün deyil. Yeni əlavə əvvəlki üzerine. Bu proqram usecase verilən ağlı başında məhdudiyyət kimi görünür.
Quraşdırma və konfiqurasiya
PyPI və ya GitHub proqram bərpa edin:
& Nbsp; Django sessiya-faylları # yüklemek tırtıl və ya
& Nbsp; git bərpa tırtıl: //github.com/NetAngels/django-session-attachments.git#egg=django-session-attachments
Lumat fayl yeni bir tətbiq əlavə et
INSTALLED_APPS = [
& Nbsp; django.contrib.staticfiles,
& Nbsp; ...
& Nbsp; session_attachments,
& Nbsp; ...
]
Sizin urlconf (urls.py) üçün yeni bir xətt əlavə edin:
urlpatterns = nümunələri ('',
& Nbsp; ...
& Nbsp; url (r '^ faylları /) (session_attachments.urls "daxildir)
& Nbsp; ...
)
Orada faylları saxlamaq üçün ayrı-ayrı Django model, belə ki, siz yazın lazımdır:
./manage.py SyncDB session_attachments
Necə istifadə etmək
Sizin app localhost mövcuddur ki, təmin: 8000, sizin Ön gələn ilə işləmək üçün URL sayı aşağıdakı almaq. Bu yəqin ki, JQuery formaları məsləhət və ya oxşar bir şey istifadə edərək, asynchronously backend ilə işləmək üçün daha asan olardı.
Nümunələr Aşağıdakı sadəlik naminə curl istifadə edin. Əlavə sessiya ilə bağlı, çünki curl Dua arasında sessiya cookies saxlamaq üçün vacibdir. Biz zülf variantları session.txt --cookie session.txt --cookie-jar keçərək bunu.
CSRF middleware ayarları aradan halda ki, curl nümunələri işləmir unutmayın.
Paketin faylları bərpa
Files / faylları // URL məlumat POST yüklemek üçün. formu ən azı bir fayl sahəsində olmalıdır. Onlar app tərəfindən məhəl fayl sahələrində adı ixtiyari ola bilər:
$ Spam> spam.txt echo
$ Echo yumurta> egg.txt
$ --cookie Session.txt --cookie-jar session.txt -F attach1=@spam.txt -F attach2=@egg.txt X POST http zülf: // localhost: 8000 / faylları / foo /
[{"Adı": "egg.txt", ...}, {"adı": "spam.txt", ...}]
Paketin faylları siyahısını əldə
$ Curl --cookie session.txt --cookie-jar session.txt -X GET http: // localhost: 8000 / faylları / foo /
$ [{"MIMETYPE": "text / plain", "ölçüsü": 4, "adı": "egg.txt", "yaradılmış": "2011-12-29 04:12"}, {"MIMETYPE" "text / plain", "ölçüsü": 5, "adı": "spam.txt", "yaradılmış": "2011-12-29 04:12"}]
JSON formatda DICTS siyahısı qaytarılır.
Paketini faylı Download
$ --cookie Session.txt --cookie-jar zülf session.txt -X GET http: // localhost: 8000 / faylları / foo / spam.txt /
spam
Paketini əlavə sil
$ -X POST http session.txt --cookie session.txt --cookie-jar zülf: // localhost: 8000 / faylları / foo / spam.txt / silmək /
[Doğru]
Bütün paketini təmizlənməsi
$ Curl --cookie session.txt --cookie-jar -X POST http session.txt: // localhost: 8000 / faylları / foo / silmək /
[[Doğru]]
Təmizləmə köhnəlmiş faylları idarə komanda
Paketini "köhnəlmiş" faylları rədd et idarə komanda var. Siz gün sayı keçə bilər aradan qaldırılması üçün ərəfəsində qurmaq üçün:
= 3
tələblər
- Python
- Django
Şərhlər tapılmadı