Reusable Django app for managing lists of books with ratings.
Project description
django-book-manager
Documentation: https://django-book-manager.readthedocs.org
This reusable Django application provides models suitable for managing a list of books with ratings, somewhat like a private Goodreads.
Its real purpose is to provide sample models, with sample data, for use in testing other Django libraries. Often, when authoring new Django libraries, we need a simple example application to use so that we can test out our code.
Getting It
You can get django-book-manager by using pip:
pip install django-book-manager
If you want to install it from source, grab the git repository from GitHub and run setup.py:
git clone git://github.com/caltechads/django-book-manager.git
cd django-book-manager
python setup.py install
Installing It
To enable book_manager in your project you need to add it to INSTALLED_APPS
in your project's settings.py file:
INSTALLED_APPS = (
...
'book_manager',
...
)
Then, apply the migrations to add the schema to your database:
./manage.py migrate
Using It
django-book-manager provides these models:
-
book_manager.Book: a book with title, slug, publishing dates, number of pages, authors, etc. -
book_manager.Author: an author.book_manager.Bookhas a many to many relationship with this -
book_manager.BookAuthor: this is a many to many through table betweenbook_manager.Bookandbook_manager.Authorthat exists to record billing order of authors on a book (first author, second author, etc.) -
book_manager.Publisher: a publisher.book_manager.Bookhas a foreign key relationship with this -
book_manager.Binding: a binding (hardcover, softcover, ebook, ...).book_manager.Bookhas a foreign key relationship with this -
book_manager.Reading: a reading record of a book by a reader. This is a many to many through table betweenbook_manager.Bookand theAUTH_USER_MODELthat records a rating, review, notes, date read, etc. for a particular user. -
book_manager.Shelf: a collection ofbook_manager.Readingobjects, used by readers to classify books
django-book-manager also supplies a command that can be used to load a
Goodreads user library export into Django, splitting
it into all the above models as appropriate.
To generate an export from Goodreads, go to your Goodreads account and:
- Click "My Books"
- At the bottom of that page, click "Import and Export"
- At the top of that page, click "Export Library"
To load the CSV thus generated into Django, first create a user for yourself in Django, then:
./manage.py import_csv <csvfile> <username>
A sample Goodreads export is available in this repository as sandbox/data/books.csv.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django-book-manager-0.3.2.tar.gz.
File metadata
- Download URL: django-book-manager-0.3.2.tar.gz
- Upload date:
- Size: 15.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c10c1bdfd0fdc93b60b78f09b7dfe0baf2661e85689bb3ab3b45e8daf2e70986
|
|
| MD5 |
e72418a69b6f5a16a4bbdec261e80167
|
|
| BLAKE2b-256 |
25fbba51421104e01005fef3147b9636788acc9faa3c73c97a9f3734a0ed0c3f
|
File details
Details for the file django_book_manager-0.3.2-py2.py3-none-any.whl.
File metadata
- Download URL: django_book_manager-0.3.2-py2.py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f21faa6131c9df72a68e71b6d5a8319f7bb8b575584f90833be81f026a0893d1
|
|
| MD5 |
a5dd24b6c031300fa6fb70ea40cc62d3
|
|
| BLAKE2b-256 |
e1086a4fa038ad2a59d68d58a8d3795a4069dc9cc34c04b8754689d1c667f08f
|