Это может показаться субъективным вопросом, но я уверен, что есть хорошие методы, которые некоторые из вас применяют для обеспечения возможности поддержания импорта в проектах Django.Я привык иметь список из 30 различных импортов в каждом файле, и это явно нарушает принцип СУХОЙ.Так что речь идет не только об эстетике, но и о том, чтобы не дублировать код.
Я ищу метод, который позволяет управлять разделами импорта в файлах Django.То, что мне кажется хорошей идеей, - это иметь общий файл импорта для каждого типа файла (виды, модели и т. Д.), Который затем импортируется вверху, с последующим импортом для конкретного приложения после этого.Но не вызовет ли это много ненужных накладных расходов?Как должны выглядеть эти файлы и каковы важные классы для каждого типа файлов?
Обновление
По запросу приведен пример одного из моих views.py
files.
from django.shortcuts import render_to_response, get_object_or_404
from shortcuts import render_to_context, render_template
from django.http import HttpResponseRedirect
from django.contrib.comments.models import Comment
from django.template import RequestContext
from django.contrib.auth.decorators import login_required
from django.views.decorators.http import require_POST
from django.core.urlresolvers import reverse
from models import Listing, LocationData
from django.template import RequestContext
import sys
import urllib
if sys.version_info <= (2, 5):
import simplejson as json
else:
import json
import forms
import sanitize
from models import RentListing, VacationListing, SaleListing
from django.forms.models import model_to_dict
from django.forms.formsets import formset_factory
from django.core.urlresolvers import reverse
, что, как вы видите, просто очень грязно, так как я просто добавляю в конец списка каждый раз, когда мне что-то нужно в файле.Сохранение его в алфавитном порядке, очевидно, помогло бы, но должен быть лучший способ обобщения, чем то, что я делаю сейчас.
Стоит ли нарушать принцип стиля, не использующий импорт *
дляради более коротких, более поддерживаемых разделов импорта в реальном файле?