startapp with manage.py to create app in another directory
You can specify the path to /server/appname
directory after appname
as the destination
i.e. where the Django app directory structure will be created.
From the startapp
docs:
startapp <app_label> [destination] # startapp command usage
Creates a Django app directory structure for the given app name in the current directory or the given destination.
If only the app name is given, the app directory will be created in the current working directory.
If the optional destination is provided, Django will use that existing directory rather than creating a new one
So, you can specify the path to your /server/appname
directory as the destination
value.
django-admin.py startapp appname [destination] # specify destination
What you need to do?
1. You need to first create a directory appname
inside /server
.
mkdir /server/appname # create directory from root level
2. Then, run the startapp
command to create the app.
django-admin.py startapp appname ./server/appname
I always have my app in an internal folder (the same that Django creates, with the name of the project) following the design of Two Scoops of Django that is similar to what you want to do. When you want to create a new app, you can use, as the previous answer says,
python ../manage.py startapp my_new_app
from within the folder in which you want to create the app. Another thing, even easier that is what I do, is that you can run
django-admin startapp my_new_app
from this inner folder, of apps and it will work.
If you are already in the server
directory, then you can run
python ../manage.py startapp appname
And appname
will be created in the server
directory instead of in the project root.