Ошибка импорта в файле Views.py внутри моего проекта django
Я пытаюсь импортировать функцию из проекта, который я сделал несколько месяцев назад, но получаю эту ошибку: ModuleNotFoundError: No module named 'seleniumtrack'
Я попробовал кое-что из того, что рекомендовал ChatGPT, и попытался поискать информацию в Интернете, но, к сожалению, ничего не вышло.
Вот как упорядочены мои файлы: python/ ├──── seleniumtrack.py └──── tracklist/ ├──── manage.py └──── downloader/ └── views.py Я пытаюсь изучить Django, но вот мой скрипт views.py:
from django.shortcuts import render
from django import forms
from django.http import HttpResponseRedirect
from django.urls import reverse
import seleniumtrack
class SearchTracklist(forms.Form):
url = forms.CharField(label="Tracklist url")
class StartScraping(forms.Form):
start = forms.CharField(widget=forms.HiddenInput(), initial="start")
# Create your views here.
def index(request):
if "urls" not in request.session:
request.session["urls"] = []
if request.method == "POST":
form = StartScraping(request.POST)
if form.is_valid():
for url in request.session["urls"]:
seleniumtrack.scrape(url)
else:
return render(request, "tracklist/index.html", {
"form": form
})
return render(request, "tracklist/index.html", {
"urls": request.session["urls"]
})
def add(request):
if request.method == "POST":
form = SearchTracklist(request.POST)
if form.is_valid():
url = form.cleaned_data["url"]
request.session["urls"] += [url]
return HttpResponseRedirect(reverse("downloader:index"))
else:
return render(request, "tracklist/index.html", {
"form": form
})
return render(request, "tracklist/add.html", {
"form": SearchTracklist()
})
Может ли кто-нибудь помочь?
Необходимо указать полный путь к импорту функции, функция seleniumtrack находится в файле seleniumtrack.py в папке python? Тогда необходимо вызвать функцию следующим образом "from python.seleniumtrack import seleniumtrack"
всегда полезно сделать директорию utils в директории django apps или основной директории проекта для функций util, вы можете импортировать функции двумя способами в django
Полный путь:
import directory_name.file_name.function_name
или относительный путь:
import .file_in_current_directory.function_name