как переместить все эти импорта в автономный файл - PullRequest
0 голосов
/ 21 июля 2010

Представьте себе ситуацию:

У меня есть каталог с множеством разных видов. все представления имеют около 6 строк с импортом - в начале файла. это чертовски крутая копия, вставляющая эти 6 строк каждый раз, когда я создаю новый вид.

Я обычно использую весь этот импорт.

from django.contrib.auth.models import User
from django.contrib.auth.decorators import login_required, user_passes_test
from django.core.files.base import ContentFile
from django.core.urlresolvers import reverse
from django.core import paginator
from django.db import connection
from django.db.models import Q
from django.http import HttpResponseRedirect, Http404, HttpResponse, HttpResponseForbidden
from django.shortcuts import render_to_response, get_object_or_404
from django.template import loader, Context, RequestContext
from django.utils.translation import ugettext as _

такие вещи ..

ТАК ВОПРОС ЕСТЬ:

КАК переместить все эти импорта в автономный файл, чтобы я мог включать этот файл в каждое создаваемое мной представление. вместо импорта тонов у меня будет один файл с импортом для всех видов. Я не думаю, что это убило бы производительность приложения или smtng. Я бы использовал этот файл только для большинства распространенных импортов или чего-то подобного ... может быть, это чертова логика php до сих пор со мной, я знаю, что включение в python - плохая практика ... но мне нужен обходной путь для этой ситуации ... нервы

Ответы [ 2 ]

2 голосов
/ 21 июля 2010

Вы можете поместить их в модуль, скажем imports.py, а затем сделать это в своих представлениях:

from imports import *

Но Я думаю, что большинство программистов на Python будут спорить (и яя бы согласился) что, вероятно, лучше перечислить ваш импорт в верхней части файла модуля, где вы на самом деле его используете, как вы уже это делаете.Это может показаться немного многословным, но гораздо проще отследить внешние модули, когда они удобно перечислены в верхней части файла.Это также делает более точным что вы импортируете.

1 голос
/ 21 июля 2010

Если вы делаете одно и то же снова и снова, то вы должны сделать это в отдельном модуле и просто импортировать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...