Как превратить django в .exe, который автоматически запускает браузер?

Я создал djangoproject с папкой venv. С помощью cmd я могу запустить свой проект следующим образом:

  1. activating the environment with: venv\Scripts\activate
  2. then inside the environment: python manage.py runserver 8000
  3. opening my browser and going to http://127.0.0.1:8000/

Я пытаюсь превратить мой проект django в нечто, что мой клиент может запустить без использования python. И это будет автоматически запускать сервер и открывать ссылку в браузере одним нажатием кнопки.

Я использовал pyinstaller на manage.py, чтобы превратить все это в windows exe, но проблема в том, что теперь, когда я нажимаю на этот exe, он не запускает сервер. Он просто выдает тот же результат, что и если бы я запустил manage.py напрямую (без 'runserver'):

Type 'djangoProject.exe help <subcommand>' for help on a specific subcommand.
Available subcommands:
[...]

Как сделать так, чтобы получился exe, который выполняет команду 'runserver' и запускает браузер?


Что я пробовал:

Я подумал, может быть, я мог бы создать другой скрипт, который запускает exe, но выполнение djangoProject.exe runserver в cmd только дает мне ошибку:

RuntimeError: Script runserver does not exist.

Я также пытался сделать что-то вроде написания скрипта на python (показанного ниже), который будет выполнять вышеупомянутые команды за меня, и потом использовать pyinstaller для этого, вместо manage.py, но я не смог заставить python выполнить вторую команду в venv, и я не уверен, что это сработало бы с pyinstaller в любом случае.

import subprocess
import os
import webbrowser

file_path = os.path.realpath(__file__)
subprocess.run([str(file_path)+"\\venv\\Scripts\\activate", "manage.py runserver 8000"], shell=True)
webbrowser.open("http://127.0.0.1:8000/")
Вернуться на верх