Automated deployment: Thu Aug 13 12:05:35 UTC 2020 9e499791de

This commit is contained in:
frankie567
2020-08-13 12:05:35 +00:00
parent ee5457eae3
commit 6b1e9ef896
45 changed files with 384 additions and 281 deletions

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="/favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="/assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="/assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="/assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="/assets/stylesheets/palette.7f672a1f.min.css">
@@ -663,15 +663,15 @@
</div>
<script src="/assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="/assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="/assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="/assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "/",
features: [],
search: Object.assign({
worker: "/assets/javascripts/worker/search.01088dc6.min.js"
worker: "/assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because one or more lines are too long

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -900,15 +900,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -739,7 +739,7 @@
<h2 id="how-it-works">How it works?<a class="headerlink" href="#how-it-works" title="Permanent link">&para;</a></h2>
<p>You can have <strong>several</strong> authentication methods, e.g. a cookie authentication for browser-based queries and a JWT token authentication for pure API queries.</p>
<p>When checking authentication, each method is run one after the other. The first method yielding a user wins. If no method yields a user, an <code>HTTPException</code> is raised.</p>
<p>For each backend, you'll be able to add a router with the corresponding <code>/login</code> and <code>/logout</code> (if applicable routes). More on this in the <a href="routers/index.md">routers documentation</a>.</p>
<p>For each backend, you'll be able to add a router with the corresponding <code>/login</code> and <code>/logout</code> (if applicable routes). More on this in the <a href="../routers/">routers documentation</a>.</p>
<h2 id="provided-methods">Provided methods<a class="headerlink" href="#provided-methods" title="Permanent link">&para;</a></h2>
<ul>
<li><a href="jwt/">JWT authentication</a></li>
@@ -811,15 +811,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -915,15 +915,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -908,15 +908,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -1062,15 +1062,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -972,15 +972,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -507,6 +507,27 @@
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="#sqlalchemy" class="md-nav__link">
SQLAlchemy
</a>
</li>
<li class="md-nav__item">
<a href="#mongodb" class="md-nav__link">
MongoDB
</a>
</li>
<li class="md-nav__item">
<a href="#tortoise-orm" class="md-nav__link">
Tortoise ORM
</a>
</li>
<li class="md-nav__item">
<a href="#what-now" class="md-nav__link">
What now?
@@ -695,6 +716,27 @@
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="#sqlalchemy" class="md-nav__link">
SQLAlchemy
</a>
</li>
<li class="md-nav__item">
<a href="#mongodb" class="md-nav__link">
MongoDB
</a>
</li>
<li class="md-nav__item">
<a href="#tortoise-orm" class="md-nav__link">
Tortoise ORM
</a>
</li>
<li class="md-nav__item">
<a href="#what-now" class="md-nav__link">
What now?
@@ -722,11 +764,11 @@
<p>Here is a full working example with JWT authentication to help get you started.</p>
<div class="admonition warning">
<p class="admonition-title">Warning</p>
<p>Notice that <strong>SECRET</strong> should be changed to a strong passphrase.
<p>Notice that <strong>SECRET</strong> should be changed to a strong passphrase.
Insecure passwords may give attackers full access to your database.</p>
</div>
<div class="tabbed-set" data-tabs="1:3">
<input name="__tabbed_1" type="radio" id="__tabbed_1_1" checked="checked" /><label for="__tabbed_1_1">SQLAlchemy</label><div class="tabbed-content"><div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">databases</span>
<h2 id="sqlalchemy">SQLAlchemy<a class="headerlink" href="#sqlalchemy" title="Permanent link">&para;</a></h2>
<div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">databases</span>
<span class="kn">import</span> <span class="nn">sqlalchemy</span>
<span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
<span class="kn">from</span> <span class="nn">fastapi_users</span> <span class="kn">import</span> <span class="n">FastAPIUsers</span><span class="p">,</span> <span class="n">models</span>
@@ -811,8 +853,10 @@ Insecure passwords may give attackers full access to your database.</p>
<span class="nd">@app</span><span class="o">.</span><span class="n">on_event</span><span class="p">(</span><span class="s2">&quot;shutdown&quot;</span><span class="p">)</span>
<span class="k">async</span> <span class="k">def</span> <span class="nf">shutdown</span><span class="p">():</span>
<span class="k">await</span> <span class="n">database</span><span class="o">.</span><span class="n">disconnect</span><span class="p">()</span>
</code></pre></div></div>
<input name="__tabbed_1" type="radio" id="__tabbed_1_2" /><label for="__tabbed_1_2">MongoDB</label><div class="tabbed-content"><div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">motor.motor_asyncio</span>
</code></pre></div>
<h2 id="mongodb">MongoDB<a class="headerlink" href="#mongodb" title="Permanent link">&para;</a></h2>
<div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">motor.motor_asyncio</span>
<span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
<span class="kn">from</span> <span class="nn">fastapi_users</span> <span class="kn">import</span> <span class="n">FastAPIUsers</span><span class="p">,</span> <span class="n">models</span>
<span class="kn">from</span> <span class="nn">fastapi_users.authentication</span> <span class="kn">import</span> <span class="n">JWTAuthentication</span>
@@ -876,8 +920,10 @@ Insecure passwords may give attackers full access to your database.</p>
<span class="n">tags</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;auth&quot;</span><span class="p">],</span>
<span class="p">)</span>
<span class="n">app</span><span class="o">.</span><span class="n">include_router</span><span class="p">(</span><span class="n">fastapi_users</span><span class="o">.</span><span class="n">get_users_router</span><span class="p">(),</span> <span class="n">prefix</span><span class="o">=</span><span class="s2">&quot;/users&quot;</span><span class="p">,</span> <span class="n">tags</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;users&quot;</span><span class="p">])</span>
</code></pre></div></div>
<input name="__tabbed_1" type="radio" id="__tabbed_1_3" /><label for="__tabbed_1_3">Tortoise ORM</label><div class="tabbed-content"><div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
</code></pre></div>
<h2 id="tortoise-orm">Tortoise ORM<a class="headerlink" href="#tortoise-orm" title="Permanent link">&para;</a></h2>
<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
<span class="kn">from</span> <span class="nn">fastapi_users</span> <span class="kn">import</span> <span class="n">FastAPIUsers</span><span class="p">,</span> <span class="n">models</span>
<span class="kn">from</span> <span class="nn">fastapi_users.authentication</span> <span class="kn">import</span> <span class="n">JWTAuthentication</span>
<span class="kn">from</span> <span class="nn">fastapi_users.db</span> <span class="kn">import</span> <span class="n">TortoiseBaseUserModel</span><span class="p">,</span> <span class="n">TortoiseUserDatabase</span>
@@ -941,8 +987,8 @@ Insecure passwords may give attackers full access to your database.</p>
<span class="n">tags</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;auth&quot;</span><span class="p">],</span>
<span class="p">)</span>
<span class="n">app</span><span class="o">.</span><span class="n">include_router</span><span class="p">(</span><span class="n">fastapi_users</span><span class="o">.</span><span class="n">get_users_router</span><span class="p">(),</span> <span class="n">prefix</span><span class="o">=</span><span class="s2">&quot;/users&quot;</span><span class="p">,</span> <span class="n">tags</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;users&quot;</span><span class="p">])</span>
</code></pre></div></div>
</div>
</code></pre></div>
<h2 id="what-now">What now?<a class="headerlink" href="#what-now" title="Permanent link">&para;</a></h2>
<p>You're ready to go! Be sure to check the <a href="../../usage/routes/">Usage</a> section to understand how yo work with <strong>FastAPI Users</strong>.</p>
@@ -1011,15 +1057,15 @@ Insecure passwords may give attackers full access to your database.</p>
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -840,15 +840,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -601,6 +601,33 @@
Full example
</a>
<nav class="md-nav" aria-label="Full example">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#sqlalchemy_1" class="md-nav__link">
SQLAlchemy
</a>
</li>
<li class="md-nav__item">
<a href="#mongodb_1" class="md-nav__link">
MongoDB
</a>
</li>
<li class="md-nav__item">
<a href="#tortoise-orm_1" class="md-nav__link">
Tortoise ORM
</a>
</li>
</ul>
</nav>
</li>
</ul>
@@ -859,6 +886,33 @@
Full example
</a>
<nav class="md-nav" aria-label="Full example">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#sqlalchemy_1" class="md-nav__link">
SQLAlchemy
</a>
</li>
<li class="md-nav__item">
<a href="#mongodb_1" class="md-nav__link">
MongoDB
</a>
</li>
<li class="md-nav__item">
<a href="#tortoise-orm_1" class="md-nav__link">
Tortoise ORM
</a>
</li>
</ul>
</nav>
</li>
</ul>
@@ -1015,8 +1069,8 @@
<p>Notice that <strong>SECRET</strong> should be changed to a strong passphrase.
Insecure passwords may give attackers full access to your database.</p>
</div>
<div class="tabbed-set" data-tabs="1:3">
<input name="__tabbed_1" type="radio" id="__tabbed_1_1" checked="checked" /><label for="__tabbed_1_1">SQLAlchemy</label><div class="tabbed-content"><div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">databases</span>
<h4 id="sqlalchemy_1">SQLAlchemy<a class="headerlink" href="#sqlalchemy_1" title="Permanent link">&para;</a></h4>
<div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">databases</span>
<span class="kn">import</span> <span class="nn">sqlalchemy</span>
<span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
<span class="kn">from</span> <span class="nn">fastapi_users</span> <span class="kn">import</span> <span class="n">FastAPIUsers</span><span class="p">,</span> <span class="n">models</span>
@@ -1119,8 +1173,10 @@ Insecure passwords may give attackers full access to your database.</p>
<span class="nd">@app</span><span class="o">.</span><span class="n">on_event</span><span class="p">(</span><span class="s2">&quot;shutdown&quot;</span><span class="p">)</span>
<span class="k">async</span> <span class="k">def</span> <span class="nf">shutdown</span><span class="p">():</span>
<span class="k">await</span> <span class="n">database</span><span class="o">.</span><span class="n">disconnect</span><span class="p">()</span>
</code></pre></div></div>
<input name="__tabbed_1" type="radio" id="__tabbed_1_2" /><label for="__tabbed_1_2">MongoDB</label><div class="tabbed-content"><div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">motor.motor_asyncio</span>
</code></pre></div>
<h4 id="mongodb_1">MongoDB<a class="headerlink" href="#mongodb_1" title="Permanent link">&para;</a></h4>
<div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">motor.motor_asyncio</span>
<span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
<span class="kn">from</span> <span class="nn">fastapi_users</span> <span class="kn">import</span> <span class="n">FastAPIUsers</span><span class="p">,</span> <span class="n">models</span>
<span class="kn">from</span> <span class="nn">fastapi_users.authentication</span> <span class="kn">import</span> <span class="n">JWTAuthentication</span>
@@ -1193,8 +1249,10 @@ Insecure passwords may give attackers full access to your database.</p>
<span class="n">google_oauth_client</span><span class="p">,</span> <span class="n">SECRET</span><span class="p">,</span> <span class="n">after_register</span><span class="o">=</span><span class="n">on_after_register</span>
<span class="p">)</span>
<span class="n">app</span><span class="o">.</span><span class="n">include_router</span><span class="p">(</span><span class="n">google_oauth_router</span><span class="p">,</span> <span class="n">prefix</span><span class="o">=</span><span class="s2">&quot;/auth/google&quot;</span><span class="p">,</span> <span class="n">tags</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;auth&quot;</span><span class="p">])</span>
</code></pre></div></div>
<input name="__tabbed_1" type="radio" id="__tabbed_1_3" /><label for="__tabbed_1_3">Tortoise ORM</label><div class="tabbed-content"><div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
</code></pre></div>
<h4 id="tortoise-orm_1">Tortoise ORM<a class="headerlink" href="#tortoise-orm_1" title="Permanent link">&para;</a></h4>
<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">fastapi</span> <span class="kn">import</span> <span class="n">FastAPI</span><span class="p">,</span> <span class="n">Request</span>
<span class="kn">from</span> <span class="nn">fastapi_users</span> <span class="kn">import</span> <span class="n">FastAPIUsers</span><span class="p">,</span> <span class="n">models</span>
<span class="kn">from</span> <span class="nn">fastapi_users.authentication</span> <span class="kn">import</span> <span class="n">JWTAuthentication</span>
<span class="kn">from</span> <span class="nn">fastapi_users.db</span> <span class="kn">import</span> <span class="p">(</span>
@@ -1276,8 +1334,7 @@ Insecure passwords may give attackers full access to your database.</p>
<span class="n">google_oauth_client</span><span class="p">,</span> <span class="n">SECRET</span><span class="p">,</span> <span class="n">after_register</span><span class="o">=</span><span class="n">on_after_register</span>
<span class="p">)</span>
<span class="n">app</span><span class="o">.</span><span class="n">include_router</span><span class="p">(</span><span class="n">google_oauth_router</span><span class="p">,</span> <span class="n">prefix</span><span class="o">=</span><span class="s2">&quot;/auth/google&quot;</span><span class="p">,</span> <span class="n">tags</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;auth&quot;</span><span class="p">])</span>
</code></pre></div></div>
</div>
</code></pre></div>
@@ -1344,15 +1401,15 @@ Insecure passwords may give attackers full access to your database.</p>
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -814,15 +814,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -834,15 +834,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -843,15 +843,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -849,15 +849,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -842,15 +842,15 @@
</div>
<script src="../../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../../..",
features: [],
search: Object.assign({
worker: "../../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="assets/stylesheets/palette.7f672a1f.min.css">
@@ -915,15 +915,15 @@
</div>
<script src="assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: ".",
features: [],
search: Object.assign({
worker: "assets/javascripts/worker/search.01088dc6.min.js"
worker: "assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../assets/stylesheets/palette.7f672a1f.min.css">
@@ -826,15 +826,15 @@
</div>
<script src="../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "..",
features: [],
search: Object.assign({
worker: "../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -1152,15 +1152,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -801,15 +801,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -778,15 +778,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

File diff suppressed because one or more lines are too long

View File

@@ -1,91 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url><url>
<loc>None</loc>
<lastmod>2020-08-02</lastmod>
<lastmod>2020-08-13</lastmod>
<changefreq>daily</changefreq>
</url>
</urlset>

View File

Binary file not shown.

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -933,15 +933,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -1684,15 +1684,15 @@ http://localhost:8000/auth/cookie/logout
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>

View File

@@ -13,7 +13,7 @@
<link rel="shortcut icon" href="../../favicon.png">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.1">
<meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.6">
@@ -21,9 +21,9 @@
<link rel="stylesheet" href="../../assets/stylesheets/main.5d00201e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/main.63b94e9e.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.816e8abc.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.7f672a1f.min.css">
@@ -1358,15 +1358,15 @@
</div>
<script src="../../assets/javascripts/vendor.592d4e23.min.js"></script>
<script src="../../assets/javascripts/bundle.073197b2.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script src="../../assets/javascripts/vendor.d1f5a259.min.js"></script>
<script src="../../assets/javascripts/bundle.d5fec882.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
<script>
app = initialize({
base: "../..",
features: [],
search: Object.assign({
worker: "../../assets/javascripts/worker/search.01088dc6.min.js"
worker: "../../assets/javascripts/worker/search.fae956e7.min.js"
}, typeof search !== "undefined" && search)
})
</script>