Skip to main content

A small reusable package that adds an Events app to a project

Project description

Giant Events

A re-usable package which can be used in any project that requires a generic Events app.

This will include the basic formatting and functionality such as model creation via the admin.

Installation

To install with the package manager, run:

$ poetry add giant-events

You should then add "events", "easy_thumbnails" and "filer" to the INSTALLED_APPS in base.py.

Configuration

This application exposes the following settings:

  • EVENT_ADMIN_LIST_DISPLAY is the field list for the admin index. This must be a list
  • EVENT_ADMIN_FIELDSETS allows the user to define the admin fieldset. This must be a list of two-tuples
  • EVENT_ADMIN_READONLY_FIELDS allows the user to configure readonly fields in the admin. This must be a list
  • EVENT_ADMIN_SEARCH_FIELDS allows the user to configure search fields in the admin. This must be a list
  • EVENT_ADMIN_FILTER_FIELDS allows the user to configure filter fields in the admin. This must be a list
  • PAGINATE_EVENTS_BY allows user to determine how many events to paginate by on the index page. Applies to time directed queryset. This must be an int
  • DEFAULT_TIME_DIRECTION chose from one of the following options - PAST, FUTURE & ANYTIME

By default the app will use the templates that are defined inside the app directory itself. However if you wish to override which template is used you will need to create a directory in the projects template directory The structure should look something like this:

templates/
    events/
        index.html
        detail.html

URLs

Add the following to core.urls for general functionality:

path("events/", include("events.urls"), name="events"),

If you want to customize the urls to include a different path and/or templates, first you must import from events import views as event_views in core.urls and then you could add the following:

path("events/", event_views.EventIndex.as_view(template_name="event/index.html"), name="event-index"),
path("events/<slug:slug>/", event_views.EventDetail.as_view(template_name="event/detail.html"), name="event-detail"),

Preparing for release

In order to prep the package for a new release on TestPyPi and PyPi there is one key thing that you need to do. You need to update the version number in the pyproject.toml. This is so that the package can be published without running into version number conflicts. The version numbering must also follow the Semantic Version rules which can be found here https://semver.org/.

Publishing

Publishing a package with poetry is incredibly easy. Once you have checked that the version number has been updated (not the same as a previous version) then you only need to run two commands.

$ `poetry build` 

will package the project up for you into a way that can be published.

$ `poetry publish`

will publish the package to PyPi. You will need to enter the username and password for the account which can be found in the company password manager

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

giant_events-0.3.0.2.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

giant_events-0.3.0.2-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file giant_events-0.3.0.2.tar.gz.

File metadata

  • Download URL: giant_events-0.3.0.2.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.10

File hashes

Hashes for giant_events-0.3.0.2.tar.gz
Algorithm Hash digest
SHA256 13441a8bf4b48057350b144b396c82291818f777b9d695c7bcaea77ed9fa738b
MD5 5aebd1ca5b4c062e4c39c1569dfdddb2
BLAKE2b-256 212f4c5cf5a6b5036a7c0379057ea450cd9c24ff927ebf7b06e707e75a4bc286

See more details on using hashes here.

File details

Details for the file giant_events-0.3.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for giant_events-0.3.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 728373eaf56b38df1ffdce14431a636f4ddb45455b0e91bf6e126ea12d8704c1
MD5 4e85ab1b7a8759e6a98b087a4b2b0daf
BLAKE2b-256 5f4fc92ead4fbbd6f4888b9d6487d9f30219d206ac5b729b7c81d11b7f188bf5

See more details on using hashes here.

Supported by

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