Saya mencoba menjalankan statsd / graphite yang menggunakan django 1.6.
Saat mengakses URL grafit, saya mendapatkan kesalahan modul django
File "/opt/graphite/webapp/graphite/urls.py", baris 15, dari django.conf.urls.defaults import * ImportError: Tidak ada modul bernama default
Namun, saya tidak menemukan paket django default di dalamnya/Library/Python/2.7/site-packages/django/conf/urls/
Tolong bantu memperbaiki masalah ini.
python
django
graphite
django-1.6
GJain
sumber
sumber
Jawaban:
django.conf.urls.defaults
telah dihapus di Django 1.6 . Jika masalahnya ada pada kode Anda sendiri, Anda akan memperbaikinya dengan mengubah impor menjadifrom django.conf.urls import patterns, url, include
Namun, dalam kasus Anda, masalahnya ada pada aplikasi pihak ketiga, grafit. Masalah telah diperbaiki di cabang master grafit dan versi 0.9.14+.
Dalam Django 1.8+ anda dapat menghapus
patterns
dari impor, dan menggunakan daftarurl()
s sebagai gantinya.from django.conf.urls import url, include
sumber
Jika karena alasan tertentu Anda tidak ingin menurunkan versi ke Django 1.5.x atau meningkatkan Grafit maka Anda dapat menerapkan perbaikan ke Grafit lama Anda dengan:
find ./ -type f -exec sed -i -e 's/from\ django\.conf\.urls\.defaults\ import\ \*/from\ django\.conf\.urls\ import\ \*/g' {} \;
..di
<graphite_dir>/webapp/graphite
direktori Anda .Ini membantu saya dengan Graphite 0.9.12 dan Django 1.7 (.5) saya.
(Saya juga harus melakukan:
find ./ -type f -exec sed -i -e 's/mimetype\=/content_type\=/g' {} \; find ./ -type f -exec sed -i -e 's/content_type\=mimetype/content_type\=content_type/g' {} \;
..kemudian setelah saya berhasil memulai Graphite beberapa fiturnya tidak berfungsi. Sekarang mereka bekerja untuk saya tetapi YMMV.)
sumber