wagtail-panels


Namewagtail-panels JSON
Version 1.0.1 PyPI version JSON
download
home_pagehttps://github.com/Nigel2392/wagtail_panels
SummaryAn application made for the Django Web Framework.
upload_time2024-02-29 14:59:21
maintainer
docs_urlNone
authorNigel
requires_python>=3.8
licenseGPL-3.0-only
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            wagtail_panels
================

A collection of useful panels to be used for your Wagtail snippets.

**Features:**
   * Buttons
      * Download a file by providing the attribute name
      * Any callback which takes an instance ID and a request to return a URL.
      * Any URL.
   * Reading time panel


Quick start
-----------

1. Add 'wagtail_panels' to your INSTALLED_APPS setting like this:

   ```
   INSTALLED_APPS = [
   ...,
   'wagtail_panels',
   ]
   ```

Example of buttons
------------------

```python
from wagtail_panels.panels import DownloadButton, AnchorTag, ButtonPanel

...

class MySnippet(models.Model):
      file = models.FileField(upload_to="files")

      panels = [
         ButtonPanel([
             DownloadButton(
                 _("Download File"),
                 "file",
                 classname="button",
             ),
             AnchorTag(
                 _("Recover"),
                 lambda request, instance: \
                     reverse_lazy("my_view", kwargs={"pk": instance.pk}),
                 classname="button no",
                 HIDE_ON_CREATE=True,
             )
         ]),
      ]
```

Example of reading time panel
-----------------------------

```python
from wagtail_panels.models import (
    PageReadingTimeMixin,
)
from wagtail_panels.panels import (
    ReadingTimePanel,
)


class MyPage(PageReadingTimeMixin, Page):
    content_panels = Page.content_panels + [
        ReadingTimePanel(),
    ]
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Nigel2392/wagtail_panels",
    "name": "wagtail-panels",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "",
    "author": "Nigel",
    "author_email": "nigel@goodadvice.it",
    "download_url": "https://files.pythonhosted.org/packages/d3/5f/ef821eac001bdbaf4f986ff8ecdd0f4d782249d8a9ddb7875614ad5b898d/wagtail_panels-1.0.1.tar.gz",
    "platform": null,
    "description": "wagtail_panels\r\n================\r\n\r\nA collection of useful panels to be used for your Wagtail snippets.\r\n\r\n**Features:**\r\n   * Buttons\r\n      * Download a file by providing the attribute name\r\n      * Any callback which takes an instance ID and a request to return a URL.\r\n      * Any URL.\r\n   * Reading time panel\r\n\r\n\r\nQuick start\r\n-----------\r\n\r\n1. Add 'wagtail_panels' to your INSTALLED_APPS setting like this:\r\n\r\n   ```\r\n   INSTALLED_APPS = [\r\n   ...,\r\n   'wagtail_panels',\r\n   ]\r\n   ```\r\n\r\nExample of buttons\r\n------------------\r\n\r\n```python\r\nfrom wagtail_panels.panels import DownloadButton, AnchorTag, ButtonPanel\r\n\r\n...\r\n\r\nclass MySnippet(models.Model):\r\n      file = models.FileField(upload_to=\"files\")\r\n\r\n      panels = [\r\n         ButtonPanel([\r\n             DownloadButton(\r\n                 _(\"Download File\"),\r\n                 \"file\",\r\n                 classname=\"button\",\r\n             ),\r\n             AnchorTag(\r\n                 _(\"Recover\"),\r\n                 lambda request, instance: \\\r\n                     reverse_lazy(\"my_view\", kwargs={\"pk\": instance.pk}),\r\n                 classname=\"button no\",\r\n                 HIDE_ON_CREATE=True,\r\n             )\r\n         ]),\r\n      ]\r\n```\r\n\r\nExample of reading time panel\r\n-----------------------------\r\n\r\n```python\r\nfrom wagtail_panels.models import (\r\n    PageReadingTimeMixin,\r\n)\r\nfrom wagtail_panels.panels import (\r\n    ReadingTimePanel,\r\n)\r\n\r\n\r\nclass MyPage(PageReadingTimeMixin, Page):\r\n    content_panels = Page.content_panels + [\r\n        ReadingTimePanel(),\r\n    ]\r\n```\r\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-only",
    "summary": "An application made for the Django Web Framework.",
    "version": "1.0.1",
    "project_urls": {
        "Homepage": "https://github.com/Nigel2392/wagtail_panels"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d35fef821eac001bdbaf4f986ff8ecdd0f4d782249d8a9ddb7875614ad5b898d",
                "md5": "9348474fcd8d23a55c450cb93257cafc",
                "sha256": "5a58d8e3fe4ac3cb8b91623f2211698cc155b44870f532792aa77c6aecbde4fa"
            },
            "downloads": -1,
            "filename": "wagtail_panels-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "9348474fcd8d23a55c450cb93257cafc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 19688,
            "upload_time": "2024-02-29T14:59:21",
            "upload_time_iso_8601": "2024-02-29T14:59:21.838121Z",
            "url": "https://files.pythonhosted.org/packages/d3/5f/ef821eac001bdbaf4f986ff8ecdd0f4d782249d8a9ddb7875614ad5b898d/wagtail_panels-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-29 14:59:21",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Nigel2392",
    "github_project": "wagtail_panels",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "wagtail-panels"
}
        
Elapsed time: 0.37781s