Skip to main content

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.Book has a many to many relationship with this

  • book_manager.BookAuthor: this is a many to many through table between book_manager.Book and book_manager.Author that exists to record billing order of authors on a book (first author, second author, etc.)

  • book_manager.Publisher: a publisher. book_manager.Book has a foreign key relationship with this

  • book_manager.Binding: a binding (hardcover, softcover, ebook, ...). book_manager.Book has 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 between book_manager.Book and the AUTH_USER_MODEL that records a rating, review, notes, date read, etc. for a particular user.

  • book_manager.Shelf: a collection of book_manager.Reading objects, 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.

Metadata

Release files for django-book-manager 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-book-manager 0.3.2
File Size Uploaded Provenance
django-book-manager-0.3.2.tar.gz 15.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for django-book-manager 0.3.2
File Interpreter ABI Platform
django_book_manager-0.3.2-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 33.2 kB

Release files / django-book-manager-0.3.2.tar.gz

Download URL django-book-manager-0.3.2.tar.gz
Size 15.6 kB
Tags Source
SHA-256 checksum
How to use checksums
c10c1bdfd0fdc93b60b78f09b7dfe0baf2661e85689bb3ab3b45e8daf2e70986
BLAKE2b-256 checksum
How to use checksums
25fbba51421104e01005fef3147b9636788acc9faa3c73c97a9f3734a0ed0c3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.6

Release files / django_book_manager-0.3.2-py2.py3-none-any.whl

Download URL django_book_manager-0.3.2-py2.py3-none-any.whl
Size 17.6 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
f21faa6131c9df72a68e71b6d5a8319f7bb8b575584f90833be81f026a0893d1
BLAKE2b-256 checksum
How to use checksums
e1086a4fa038ad2a59d68d58a8d3795a4069dc9cc34c04b8754689d1c667f08f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.6

Security for django-book-manager 0.3.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page