-
Notifications
You must be signed in to change notification settings - Fork 24
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
13 changed files
with
57 additions
and
42 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,7 +2,7 @@ | |
<li class="social-icons-twitter"><a data-toggle="tooltip" href="" target="_blank" title="" data-original-title="Twitter"><i class="fab fa-twitter"></i></a></li> | ||
<li class="social-icons-facebook"><a data-toggle="tooltip" href="" target="_blank" title="" data-original-title="Facebook"><i class="fab fa-facebook-f"></i></a></li> | ||
<li class="social-icons-dribbble"><a data-toggle="tooltip" href="" target="_blank" title="" data-original-title="Dribbble"><i class="fab fa-dribbble"></i></a></li> | ||
--> </ul> </div> </nav> </header> <div id=content role=main> <div class="app-navigation bg-light"> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#introduction>Introduction</a> </li> <li class=nav-item> <a class=nav-link href=#getting_started>Getting Started</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#installation>Installation</a> </li> <li class=nav-item> <a class=nav-link href=#quick_tutorial>Quick Tutorial</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#settings>Settings</a> </li> <li class=nav-item> <a class=nav-link href=#dashboard-widget-admins>Dashboard Widget Admins</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#registering-widgets>Registering Widgets</a> </li> <li class=nav-item> <a class=nav-link href=#widget-methods-and-attributes>Methods and Attributes</a> </li> <li class=nav-item> <a class=nav-link href=#widget-chart-types>Chart Types</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#model-admins>Model Admins</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#registering-models>Registering Models</a> </li> <li class=nav-item> <a class=nav-link href=#authentication>Authentication</a> </li> <li class=nav-item> <a class=nav-link href=#model-methods-and-attributes>Methods and Attributes</a> </li> <li class=nav-item> <a class=nav-link href=#model-form-field-types>Form Field Types</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#inline-admins>Inline Model Admins</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#registering-inlines>Registering Inlines</a> </li> <li class=nav-item> <a class=nav-link href=#inline-methods-and-attributes>Methods and Attributes</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#changelog>Changelog</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#v0_2_2>v0.2.2</a> </li> <li class=nav-item> <a class=nav-link href=#v0_2_1>v0.2.1</a> </li> <li class=nav-item> <a class=nav-link href=#v0_2_0>v0.2.0</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_41>v0.1.41</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_40>v0.1.40</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_39>v0.1.39</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_38>v0.1.38</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_37>v0.1.37</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_36>v0.1.36</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_35>v0.1.35</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_34>v0.1.34</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_33>v0.1.33</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_32>v0.1.32</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_31>v0.1.31</a> </li> </ul> </li> </ul> </div> <div class=app-content> <div class=container> <section id=index> <h1>FastAdmin | Documentation</h1> <div class=row> <div class="col-sm-6 col-lg-4"> <ul class=list-unstyled> <li><strong>Version:</strong> 0.2.2</li> <li> <strong>Author:</strong> <a href=mailto:[email protected] target=_blank> Seva D. </a> </li> </ul> </div> <div class="col-sm-6 col-lg-4"> <ul class=list-unstyled> <li> <strong class=font-weight-700>Created:</strong> 7 March 2023 </li> <li> <strong>Updated:</strong> 02 August 2024 </li> </ul> </div> </div> </section> <hr class=divider> <section id=introduction> <h2>Introduction</h2> <p class=text-4> <a href=https://github.com/vsdudakov/fastadmin target=_blank>FastAdmin</a> is an easy-to-use Admin Dashboard App for FastAPI/Django/Flask inspired by Django Admin. </p> <p class=text-4> FastAdmin was built with relations in mind and admiration for the excellent and popular Django Admin. It's engraved in its design that you may configure your admin dashboard for FastAPI/Django/Flask easiest way. </p> <p class=text-4> FastAdmin is designed to be minimalistic, functional and yet familiar. </p> </section> <hr class=small-divider> <section id=getting_started> <h2>Getting Started</h2> <p class="alert alert-info"> If you have any questions that are beyond the scope of the documentation, Please feel free to email <a href=mailto:[email protected] target=_blank>us</a>. </p> <section id=installation> <h3>Installation</h3> <p class=lead> Follow the steps below to setup FastAdmin: </p> <p class=text-4> Install the package using pip: </p> <p class="alert alert-info"> Note: For zsh and macos use: <code>pip install fastadmin[fastapi,django]</code> </p> <pre> | ||
--> </ul> </div> </nav> </header> <div id=content role=main> <div class="app-navigation bg-light"> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#introduction>Introduction</a> </li> <li class=nav-item> <a class=nav-link href=#getting_started>Getting Started</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#installation>Installation</a> </li> <li class=nav-item> <a class=nav-link href=#quick_tutorial>Quick Tutorial</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#settings>Settings</a> </li> <li class=nav-item> <a class=nav-link href=#dashboard-widget-admins>Dashboard Widget Admins</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#registering-widgets>Registering Widgets</a> </li> <li class=nav-item> <a class=nav-link href=#widget-methods-and-attributes>Methods and Attributes</a> </li> <li class=nav-item> <a class=nav-link href=#widget-chart-types>Chart Types</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#model-admins>Model Admins</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#registering-models>Registering Models</a> </li> <li class=nav-item> <a class=nav-link href=#authentication>Authentication</a> </li> <li class=nav-item> <a class=nav-link href=#model-methods-and-attributes>Methods and Attributes</a> </li> <li class=nav-item> <a class=nav-link href=#model-form-field-types>Form Field Types</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#inline-admins>Inline Model Admins</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#registering-inlines>Registering Inlines</a> </li> <li class=nav-item> <a class=nav-link href=#inline-methods-and-attributes>Methods and Attributes</a> </li> </ul> </li> <li class=nav-item> <a class=nav-link href=#changelog>Changelog</a> <ul class="nav flex-column"> <li class=nav-item> <a class=nav-link href=#v0_2_3>v0.2.3</a> </li> <li class=nav-item> <a class=nav-link href=#v0_2_2>v0.2.2</a> </li> <li class=nav-item> <a class=nav-link href=#v0_2_1>v0.2.1</a> </li> <li class=nav-item> <a class=nav-link href=#v0_2_0>v0.2.0</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_41>v0.1.41</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_40>v0.1.40</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_39>v0.1.39</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_38>v0.1.38</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_37>v0.1.37</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_36>v0.1.36</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_35>v0.1.35</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_34>v0.1.34</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_33>v0.1.33</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_32>v0.1.32</a> </li> <li class=nav-item> <a class=nav-link href=#v0_1_31>v0.1.31</a> </li> </ul> </li> </ul> </div> <div class=app-content> <div class=container> <section id=index> <h1>FastAdmin | Documentation</h1> <div class=row> <div class="col-sm-6 col-lg-4"> <ul class=list-unstyled> <li><strong>Version:</strong> 0.2.3</li> <li> <strong>Author:</strong> <a href=mailto:[email protected] target=_blank> Seva D. </a> </li> </ul> </div> <div class="col-sm-6 col-lg-4"> <ul class=list-unstyled> <li> <strong class=font-weight-700>Created:</strong> 7 March 2023 </li> <li> <strong>Updated:</strong> 02 August 2024 </li> </ul> </div> </div> </section> <hr class=divider> <section id=introduction> <h2>Introduction</h2> <p class=text-4> <a href=https://github.com/vsdudakov/fastadmin target=_blank>FastAdmin</a> is an easy-to-use Admin Dashboard App for FastAPI/Django/Flask inspired by Django Admin. </p> <p class=text-4> FastAdmin was built with relations in mind and admiration for the excellent and popular Django Admin. It's engraved in its design that you may configure your admin dashboard for FastAPI/Django/Flask easiest way. </p> <p class=text-4> FastAdmin is designed to be minimalistic, functional and yet familiar. </p> </section> <hr class=small-divider> <section id=getting_started> <h2>Getting Started</h2> <p class="alert alert-info"> If you have any questions that are beyond the scope of the documentation, Please feel free to email <a href=mailto:[email protected] target=_blank>us</a>. </p> <section id=installation> <h3>Installation</h3> <p class=lead> Follow the steps below to setup FastAdmin: </p> <p class=text-4> Install the package using pip: </p> <p class="alert alert-info"> Note: For zsh and macos use: <code>pip install fastadmin[fastapi,django]</code> </p> <pre> | ||
<code class=language-bash> | ||
|
||
pip install fastadmin[fastapi,django] # for fastapi with django orm | ||
|
@@ -1286,7 +1286,7 @@ | |
min_num: int = 1 | ||
|
||
</code> | ||
</pre> </section> </section> <hr class=small-divider> <section id=changelog> <h2>Changelog</h2> <p class="alert alert-info"> See what's new added, changed, fixed, improved or updated in the latest versions. </p> <section id=v0_2_2> <h3>v0.2.2</h3> <p class=text-4> Fix bugs with datetime. </p> </section> <section id=v0_2_1> <h3>v0.2.1</h3> <p class=text-4> Update packages. Fix linters and tests in vite frontend. Removed pydantic from dependencies. </p> </section> <section id=v0_2_0> <h3>v0.2.0</h3> <p class=text-4> Update packages. Use vite instead obsolete react-scripts. </p> </section> <section id=v0_1_41> <h3>v0.1.41</h3> <p class=text-4> Fixed bug with datetime. Added verbose name logic for models and inlines. Updated frontend libraries. </p> </section> <section id=v0_1_40> <h3>v0.1.40</h3> <p class=text-4> Added RUFF linter. Cleaned up code. Removed pydantic dependency. </p> </section> <section id=v0_1_39> <h3>v0.1.39</h3> <p class=text-4> Bug fixes. </p> </section> <section id=v0_1_38> <h3>v0.1.38</h3> <p class=text-4> Bug fixes. </p> </section> <section id=v0_1_37> <h3>v0.1.37</h3> <p class=text-4> Bug fixes. </p> </section> <section id=v0_1_36> <h3>v0.1.36</h3> <p class=text-4> Added autogeneration of documentation and examples. </p> </section> <section id=v0_1_35> <h3>v0.1.35</h3> <p class=text-4> Added DashboardWidgetAdmin class and charts for dashboard. </p> </section> <section id=v0_1_34> <h3>v0.1.34</h3> <p class=text-4> Added SlugInput, EmailInput, PhoneInput, UrlInput, JsonTextArea widget types. </p> </section> <section id=v0_1_33> <h3>v0.1.33</h3> <p class=text-4> Added list_display_widths parameter. </p> </section> <section id=v0_1_32> <h3>v0.1.32</h3> <p class=text-4> Added Upload widget type. </p> </section> <section id=v0_1_31> <h3>v0.1.31</h3> <p class=text-4> Added PasswordInput widget type. </p> </section> </section> <hr class=small-divider> </div> </div> </div> <footer id=footer class="section bg-dark footer-text-light"> <div class=container> <!-- | ||
</pre> </section> </section> <hr class=small-divider> <section id=changelog> <h2>Changelog</h2> <p class="alert alert-info"> See what's new added, changed, fixed, improved or updated in the latest versions. </p> <section id=v0_2_3> <h3>v0.2.3</h3> <p class=text-4> Fix filters issue on lists. Remove jinja from dependencies. </p> </section> <section id=v0_2_2> <h3>v0.2.2</h3> <p class=text-4> Fix bugs with datetime. </p> </section> <section id=v0_2_1> <h3>v0.2.1</h3> <p class=text-4> Update packages. Fix linters and tests in vite frontend. Removed pydantic from dependencies. </p> </section> <section id=v0_2_0> <h3>v0.2.0</h3> <p class=text-4> Update packages. Use vite instead obsolete react-scripts. </p> </section> <section id=v0_1_41> <h3>v0.1.41</h3> <p class=text-4> Fixed bug with datetime. Added verbose name logic for models and inlines. Updated frontend libraries. </p> </section> <section id=v0_1_40> <h3>v0.1.40</h3> <p class=text-4> Added RUFF linter. Cleaned up code. Removed pydantic dependency. </p> </section> <section id=v0_1_39> <h3>v0.1.39</h3> <p class=text-4> Bug fixes. </p> </section> <section id=v0_1_38> <h3>v0.1.38</h3> <p class=text-4> Bug fixes. </p> </section> <section id=v0_1_37> <h3>v0.1.37</h3> <p class=text-4> Bug fixes. </p> </section> <section id=v0_1_36> <h3>v0.1.36</h3> <p class=text-4> Added autogeneration of documentation and examples. </p> </section> <section id=v0_1_35> <h3>v0.1.35</h3> <p class=text-4> Added DashboardWidgetAdmin class and charts for dashboard. </p> </section> <section id=v0_1_34> <h3>v0.1.34</h3> <p class=text-4> Added SlugInput, EmailInput, PhoneInput, UrlInput, JsonTextArea widget types. </p> </section> <section id=v0_1_33> <h3>v0.1.33</h3> <p class=text-4> Added list_display_widths parameter. </p> </section> <section id=v0_1_32> <h3>v0.1.32</h3> <p class=text-4> Added Upload widget type. </p> </section> <section id=v0_1_31> <h3>v0.1.31</h3> <p class=text-4> Added PasswordInput widget type. </p> </section> </section> <hr class=small-divider> </div> </div> </div> <footer id=footer class="section bg-dark footer-text-light"> <div class=container> <!-- | ||
<ul class="social-icons social-icons-lg social-icons-muted justify-content-center mb-3"> | ||
<li><a data-toggle="tooltip" href="https://twitter.com/harnishdesign/" target="_blank" title="" data-original-title="Twitter"><i class="fab fa-twitter"></i></a></li> | ||
<li><a data-toggle="tooltip" href="http://www.facebook.com/harnishdesign/" target="_blank" title="" data-original-title="Facebook"><i class="fab fa-facebook-f"></i></a></li> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,19 @@ | ||
import typing | ||
|
||
import jinja2 | ||
from django.http import HttpResponse | ||
|
||
from fastadmin.api.helpers import get_template | ||
from fastadmin.settings import ROOT_DIR, settings | ||
|
||
|
||
def _create_env(directory: str, **env_options: typing.Any) -> "jinja2.Environment": | ||
loader = jinja2.FileSystemLoader(directory) | ||
env_options.setdefault("loader", loader) | ||
env_options.setdefault("autoescape", True) | ||
|
||
return jinja2.Environment(**env_options) # noqa: S701 | ||
|
||
|
||
async def index(request): | ||
def index(request): | ||
"""This method is used to render index page. | ||
:params request: a request object. | ||
:return: A response object. | ||
""" | ||
env = _create_env(ROOT_DIR / "templates") | ||
template = env.get_template("index.html") | ||
content = template.render({"request": request, "settings": settings}) | ||
|
||
return HttpResponse(content) | ||
template = get_template( | ||
ROOT_DIR / "templates" / "index.html", | ||
{ | ||
"ADMIN_PREFIX": settings.ADMIN_PREFIX, | ||
}, | ||
) | ||
return HttpResponse(template) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,25 @@ | ||
import logging | ||
|
||
from fastapi import APIRouter, Request | ||
from fastapi import APIRouter | ||
from fastapi.responses import HTMLResponse | ||
from fastapi.templating import Jinja2Templates | ||
|
||
from fastadmin.api.helpers import get_template | ||
from fastadmin.settings import ROOT_DIR, settings | ||
|
||
logger = logging.getLogger(__name__) | ||
router = APIRouter() | ||
templates = Jinja2Templates(directory=ROOT_DIR / "templates") | ||
|
||
|
||
@router.get("/", response_class=HTMLResponse) | ||
async def index(request: Request): | ||
def index(): | ||
"""This method is used to render index page. | ||
:params request: a request object. | ||
:return: A response object. | ||
""" | ||
return templates.TemplateResponse("index.html", {"request": request, "settings": settings}) | ||
return get_template( | ||
ROOT_DIR / "templates" / "index.html", | ||
{ | ||
"ADMIN_PREFIX": settings.ADMIN_PREFIX, | ||
}, | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.