On Windows Vista, I need a script that starts the activate
(to activate the virtualenv) script in:
C:\Users\Admin\Desktop\venv\Scripts\
And later, in the virtual environment, starts to the manage.py runserver
in the folder:
C:\Users\Admin\Desktop\helloworld\
How should I do? What modules should I use?
You can activate your virtualenv and then start server using a bat file.
Copy this script in to a file and save it with .bat extension (eg. runserver.bat)
@echo off
cmd /k "cd /d C:\Users\Admin\Desktop\venv\Scripts & activate & cd /d C:\Users\Admin\Desktop\helloworld & python manage.py runserver"
Then you can just run this bat file (just double click) to start the server
If you want call virtualenv'ed Python directly you can do something like this:
C:\Users\Admin\Desktop\venv\Scripts\bin\python.exe manage.py runserver
Double check python.exe
location on your virtualenv folder - don't remember how it is out of my head. This Python associates itself with the virtualenv and uses its site-packages
by default.
runserver.bat:
CALL [your path]\Scripts\activate.bat
python manage.py runserver
Rather than using strings you can use a caret (^) as described in this question: Long commands split over multiple lines in Windows Vista batch (.bat) file
E.g.
cmd /k cd path/to/activate ^
activate.bat
pip uninstall --yes package ^
pip install git+https://git.server.com/user/project@remote/branch ^
deactivate
will open a venv and uninstall and reinstall a branch of a Git repository. This is a useful pattern for automating deployment of code into a venv.