Invoice mod for the Wagtail CMS
Project description
#wagtailinvoices
A plugin for Wagtail that provides invoice functionality
[Documentation on ReadTheDocs](https://wagtailinvoices.readthedocs.org/en/latest/)
##Installing
Install using pip
```
pip install wagtailinvoices
```
It works with Wagtail 1.0b2 and upwards.
##Using
Create invoice models for your application that inherit from the relevant `wagtailinvoices` models:
``` python
from django.db import models
from wagtail.wagtailadmin.edit_handlers import FieldPanel
from wagtail.wagtailcore.fields import RichTextField
from wagtail.wagtailcore.models import Page
from wagtailinvoices.models import InvoiceIndexMixin, AbstractInvoice
from wagtailinvoices.decorators import invoiceindex
# The decorator registers this model as a invoice index
@invoiceindex
class InvoiceIndex(InvoiceIndexMixin, Page):
# Add extra fields here, as in a normal Wagtail Page class, if required
invoice_model = 'Invoice'
class Invoice(AbstractInvoice):
# Invoice is a normal Django model, *not* a Wagtail Page.
# Add any fields required for your page.
# It already has ``date`` field, and a link to its parent ``InvoiceIndex`` Page
full_name = models.CharField(max_length=255)
organization = models.CharField(max_length=255)
phone_number = models.CharField(max_length=255)
panels = [
FieldPanel('full_name', classname='full'),
FieldPanel('organization'),
FieldPanel('phone_number')
] + AbstractInvoice.panels
def __unicode__(self):
return self.full_name
```
A plugin for Wagtail that provides invoice functionality
[Documentation on ReadTheDocs](https://wagtailinvoices.readthedocs.org/en/latest/)
##Installing
Install using pip
```
pip install wagtailinvoices
```
It works with Wagtail 1.0b2 and upwards.
##Using
Create invoice models for your application that inherit from the relevant `wagtailinvoices` models:
``` python
from django.db import models
from wagtail.wagtailadmin.edit_handlers import FieldPanel
from wagtail.wagtailcore.fields import RichTextField
from wagtail.wagtailcore.models import Page
from wagtailinvoices.models import InvoiceIndexMixin, AbstractInvoice
from wagtailinvoices.decorators import invoiceindex
# The decorator registers this model as a invoice index
@invoiceindex
class InvoiceIndex(InvoiceIndexMixin, Page):
# Add extra fields here, as in a normal Wagtail Page class, if required
invoice_model = 'Invoice'
class Invoice(AbstractInvoice):
# Invoice is a normal Django model, *not* a Wagtail Page.
# Add any fields required for your page.
# It already has ``date`` field, and a link to its parent ``InvoiceIndex`` Page
full_name = models.CharField(max_length=255)
organization = models.CharField(max_length=255)
phone_number = models.CharField(max_length=255)
panels = [
FieldPanel('full_name', classname='full'),
FieldPanel('organization'),
FieldPanel('phone_number')
] + AbstractInvoice.panels
def __unicode__(self):
return self.full_name
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wagtailinvoices-0.2.0.tar.gz
(10.6 kB
view details)
File details
Details for the file wagtailinvoices-0.2.0.tar.gz
.
File metadata
- Download URL: wagtailinvoices-0.2.0.tar.gz
- Upload date:
- Size: 10.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | da955ddb4d98bb0b6b4aaa7a11d4ed49a59fb816393b257b7302246807ce68e0 |
|
MD5 | aea77ef7928638bbd7b851bbe7ee4afc |
|
BLAKE2b-256 | f44a762386e6266f7be263569759fca333cbfe7faab73c362882cee922eaa4ab |