Djenesis begets Django projects
Project description
Description
Djenesis begets django projects.
Djenesis is a tool that helps with starting and working on Django projects. Virtualenv is a de facto requirement for any python project and especially so with django projects.
Djenesis does require virtualenv, and your first step is installation for your platform.
Virtualenv Installation
Mac OS X
Virtualenv requires the ‘install-name-tool’ command line utility to run properly on OSX. But by default OS X does not ship with this installed. It can be installed either by installing Xcode from the Mac App Store, or if you would like to avoid a several gigabyte download you can install the “Command Line Tools for Xcode” from Apple Developer Downloads. Note that both of these will require the creation of an Apple ID if you do not already have one.
Once either Xcode or the Xcode Command Line Tools are installed, you can install virtualenv with pip – if you don’t have pip, OSX ships with the easy_install command:
pip install virtualenv
or:
easy_install virtualenv
Windows
Make sure C:\Python27\Scripts is in your PATH variable. (Replace “Python27” with your version)
Download ez_setup.py and run it:
python ez_setup.py
Then you can install virtualenv with easy_install:
easy_install virtualenv
Ubuntu
Install pip and virtualenv from the package repository:
apt-get install python-pip python-virtualenv
Redhat
Install pip and virtualenv from the package repository:
yum install python-pip python-virtualenv
Tips & Tricks
Pip Download Cache
set the environment variable PIP_DOWNLOAD_CACHE, to reduce the need to download pip packages multiple times. e.g.:
export PIP_DOWNLOAD_CACHE=~/.pip_download_cache
User Stories
I want to create a new default django project
The simplest story, give djenesis a project name and it will initialze a new project:
$ djenesis djangoproject
This will create a new virtualenv environment at ./env-djangoproject, install the latest version of Django, and initialize a new django project at ./djangoproject using the standard django-admin startproject command.
I want to create a new django project based on my custom template
Probably the most common use case, start a new project based on a preferred project layout:
$ djenesis mynewproject git+https://github.com/concentricsky/djenesis-template.git
this will inflate a new project based on the template found at the git+url in a directory named mynewproject This will also create a virtualenv named env-mynewproject and install any packages found in requirements.txt found at the toplevel directory in the template.
I want to start working on an existing django project
A convienent way to start working on a project:
$ djenesis -i projectname git+git@github.com:user/project.git
this will initialize a virtualenv env-projectname and clone the project into projectname, just like without -i but will preserve .git or any other SCM management files. (.hg, .git, .svn)
I like using mkvirtualenv and workon
The virtualenvwrapper package is popular and is a convienent way to maintain a lot of different projects:
$ djenesis -w thenewproject
Template URL Formats
You can specify a template as either a path to a local file, a URL to a remote .tgz file, or as a SCM url:
/path/to/local/directory http://example.com/django-template.tgz git+git@github.com:user/project git+ssh://user@example.com:port/repository.git#branch hg+https://bitbucket.org/user/project svn+http://project.googlecode.com/svn/trunk/project
Environment Variables
- DJENESIS_DEFUALT_TEMPLATE
If set, djenesis will use this as the template argument if none is given on the commandline.
- DJENESIS_VIRTUALENVWRAPPER
If set to “1”, djenesis will default to using the mkvirtualenv and workon commands.
- DJENESIS_VIRTUALENVWRAPPER_PATH
The path to where virtualenvwrapper.sh has been installed.
Usage
Usage: djenesis [options] <project_name> [template] Options: -h, --help show this help message and exit -e VIRTUALENV, --virtualenv=VIRTUALENV Specify the path to create the virtualenv -i, --initialize Initialize from an existing project (dont remove scm files) -w, --use-virtualenvwrapper use 'mkvirtualenv' and 'workon' from virtualenvwrapper --virtualenvwrapper-name=VIRTUALENVWRAPPER_NAME the name of the virtualenvwrapper environment to use (defaults to project_name) --virtualenvwrapper-path=VIRTUALENVWRAPPER_PATH the path to the virtualenvwrapper
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file djenesis-1.1.1.tar.gz
.
File metadata
- Download URL: djenesis-1.1.1.tar.gz
- Upload date:
- Size: 5.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 413c44a23c29ed1950df8a7d86cf46bbbe0224e39a7b23edc5ca9184bcfd55ed |
|
MD5 | 33803f3afb8e2d1ebdf623ef139a2a3a |
|
BLAKE2b-256 | 8f3ef01c342985c9272c6a0343df6283678da3479179fb53f8f38804f2a5a5a7 |