Skip to content

A cookiecutter template to create a Django app around a model with CRUD views using django-vanilla-views, a floppyforms ModelForm and WebTest tests using model mommy.

License

Notifications You must be signed in to change notification settings

wildfish/cookiecutter-django-crud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cookiecutter Django CRUD

A cookiecutter template to create a Django app within an existing Django project, with boilerplate including:
  • A barebones Django model.
  • Django CRUD views and templates using django-vanilla-views.
  • A Django ModelForm using bootstrap3.
  • Tests for all of the views using WebTest.
  • Model Mommy generated models for the tests.

Blog post walkthrough at http://wildfish.com/blog/2013/09/25/generating-django-crud-scaffolding-cookiecutter/

This template is now included in my Django project starter template at https://github.com/wildfish/wildfish-django-starter/. If you want to generate an entire Django project from scratch rather than just an app then take a look there.

Python 2 vs 3

As of now I'm only testing with Python 3. The latest version to include the Python 2.7 compatibility decorators is in the python2 branch. I don't expect I'll be continuing to maintain the python2 branch, but it should be straightforward and anyone else is welcome to.

It's time you were using Python 3 now!

Quickstart

  1. Install cookiecutter, and apps listed in requirements.txt for our generated app. Install them all with:
pip install -r https://raw.github.com/wildfish/cookiecutter-django-crud/master/requirements.txt
  1. Run cookiecutter using this template. Note that it will overwrite existing files without warning if you already have an app dir of the same name, so make sure your code is checked in or backed up.
cookiecutter git@github.com:wildfish/cookiecutter-django-crud.git
  1. You'll need to add bootstrap3 to your INSTALLED_APPS, along with your new app of course:
INSTALLED_APPS = (
    ..
    'bootstrap3',
    'yourproject.yourapp',
)
  1. And don't forget to hook up your urls.py:
url(r'^things/', include('yourproject.yourapp.urls', namespace='yourapp')),
  1. Run your newly created tests:
python manage.py test yourproject.yourapp

Feel free to fork and make it your own, or send anything back up which you think may be generally useful.

About

A cookiecutter template to create a Django app around a model with CRUD views using django-vanilla-views, a floppyforms ModelForm and WebTest tests using model mommy.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •