Skip to main content

Work library for Forge

Project description

forge-db

Use Postgres for local Django development via Docker.

Installation

Forge installation

The forge-db package is a dependency of forge and is available as forge db.

If you use the Forge quickstart, everything you need will already be set up.

The standard Django installation can give you an idea of the steps involved.

Standard Django installation

This package can be used without forge by installing it as a regular Django app.

First, install forge-db from PyPI:

pip install forge-db

Then add it to your INSTALLED_APPS in settings.py:

INSTALLED_APPS = [
    ...
    "forgedb",
]

Now you will have access to the db command:

python manage.py db

You will need to have a DATABASE_URL environment variable, which is where the database name, username, password, and port are parsed from:

# .env
DATABASE_URL=postgres://postgres:postgres@localhost:54321/postgres

You can use a POSTGRES_VERSION environment variable to override the default Postgres version (13):

# .env
POSTGRES_VERSION=12

In most cases you will want to use dj_database_url in your settings.py to easily set the same settings (works in most deployment environments too):

# settings.py
import dj_databse_url

DATABASES = {
    "default": dj_database_url.parse(
        environ["DATABASE_URL"], conn_max_age=environ.get("DATABASE_CONN_MAX_AGE", 600)
    )
}

You will also notice a new .forge directory in your project root. This contains your local database files and should be added to .gitignore.

Usage

If you use forge-work, then most of the time you won't need to interact with forge-db directly. But it has a few commands that come in handy.

  • forge db start - starts a new database container and runs it in the background (use --logs to foreground it or connect to the logs)
  • forge db stop - stop the database container
  • forge db reset - drops and creates a new database
  • forge db pull - pulls the latest database backup from Heroku and imports it into the local database

In the end, the database container is like any other Docker container. You can use the standard Docker commands and tools to interact with it when needed.

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

forge-db-0.3.3.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

forge_db-0.3.3-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file forge-db-0.3.3.tar.gz.

File metadata

  • Download URL: forge-db-0.3.3.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.10.6 Linux/5.15.0-1019-azure

File hashes

Hashes for forge-db-0.3.3.tar.gz
Algorithm Hash digest
SHA256 e6bdd602d268c2a9ded76c7ee44ab416a682972b15aa76250facce69d095d6e2
MD5 f9e7faa8f7d7ac9564de315e431efcc3
BLAKE2b-256 fefa1dbf5cd1c24c55dddc94012e9fdc11dc3f64d055c546662650c7c60e15db

See more details on using hashes here.

File details

Details for the file forge_db-0.3.3-py3-none-any.whl.

File metadata

  • Download URL: forge_db-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0 CPython/3.10.6 Linux/5.15.0-1019-azure

File hashes

Hashes for forge_db-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b68638f5c27aea2f2929ba031805d6495424f1ce7b5bdbd2cc18bcaa2ae1aaec
MD5 767fab72fd006d0bdefefe175101bf08
BLAKE2b-256 6d502e23c56c9a4b9675fa0df3fd8bf8e562d5284fc1ecfb200d26410f73a8d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page