Automated deployment: Thu Dec 30 14:23:11 UTC 2021 c4de66b81cab11850307f5768aee41490af9d3cd

This commit is contained in:
frankie567
2021-12-30 14:23:11 +00:00
parent b3810d5e3b
commit c687f9e2bd
39 changed files with 5844 additions and 584 deletions

View File

@ -212,14 +212,59 @@
Introduction
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3_4_2" id="__nav_3_4_2" type="checkbox"/>
<label class="md-nav__link" for="__nav_3_4_2">
Transports
<span class="md-nav__icon md-icon"></span>
</label>
<nav aria-label="Transports" class="md-nav" data-md-level="3">
<label class="md-nav__title" for="__nav_3_4_2">
<span class="md-nav__icon md-icon"></span>
Transports
</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item">
<a class="md-nav__link" href="../../configuration/authentication/jwt/">
<a class="md-nav__link" href="../../configuration/authentication/transports/cookie/">
Cookie
</a>
</li>
<li class="md-nav__item">
<a class="md-nav__link" href="../../configuration/authentication/transports/bearer/">
Bearer
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3_4_3" id="__nav_3_4_3" type="checkbox"/>
<label class="md-nav__link" for="__nav_3_4_3">
Strategies
<span class="md-nav__icon md-icon"></span>
</label>
<nav aria-label="Strategies" class="md-nav" data-md-level="3">
<label class="md-nav__title" for="__nav_3_4_3">
<span class="md-nav__icon md-icon"></span>
Strategies
</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item">
<a class="md-nav__link" href="../../configuration/authentication/strategies/jwt/">
JWT
</a>
</li>
<li class="md-nav__item">
<a class="md-nav__link" href="../../configuration/authentication/cookie/">
Cookie
<a class="md-nav__link" href="../../configuration/authentication/strategies/redis/">
Redis
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a class="md-nav__link" href="../../configuration/authentication/backend/">
Create a backend
</a>
</li>
</ul>
@ -413,6 +458,11 @@
7.x.x ➡️ 8.x.x
</a>
</li>
<li class="md-nav__item">
<a class="md-nav__link" href="../../migration/8x_to_9x/">
8.x.x ➡️ 9.x.x
</a>
</li>
</ul>
</nav>
</li>
@ -470,10 +520,10 @@
<span class="kn">from</span> <span class="nn">app.users</span> <span class="kn">import</span> <span class="n">get_user_manager</span>
<span class="kn">from</span> <span class="nn">fastapi_users.manager</span> <span class="kn">import</span> <span class="n">UserAlreadyExists</span>
<span class="n">get_user_db_context</span> <span class="o">=</span> <span class="n">contextlib</span><span class="o">.</span><span class="n">asynccontextmanager</span><span class="p">(</span><span class="n">get_user_db</span><span class="p">)</span>
<span class="hll"><span class="n">get_user_manager_context</span> <span class="o">=</span> <span class="n">contextlib</span><span class="o">.</span><span class="n">asynccontextmanager</span><span class="p">(</span><span class="n">get_user_manager</span><span class="p">)</span>
</span><span class="hll">
<span class="hll"><span class="n">get_user_db_context</span> <span class="o">=</span> <span class="n">contextlib</span><span class="o">.</span><span class="n">asynccontextmanager</span><span class="p">(</span><span class="n">get_user_db</span><span class="p">)</span>
</span><span class="hll"><span class="n">get_user_manager_context</span> <span class="o">=</span> <span class="n">contextlib</span><span class="o">.</span><span class="n">asynccontextmanager</span><span class="p">(</span><span class="n">get_user_manager</span><span class="p">)</span>
</span>
<span class="k">async</span> <span class="k">def</span> <span class="nf">create_user</span><span class="p">(</span><span class="n">email</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">password</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">is_superuser</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span><span class="p">):</span>
<span class="k">try</span><span class="p">:</span>
<span class="k">async</span> <span class="k">with</span> <span class="n">get_user_db_context</span><span class="p">()</span> <span class="k">as</span> <span class="n">user_db</span><span class="p">:</span>
@ -504,8 +554,8 @@
<span class="n">get_user_manager_context</span> <span class="o">=</span> <span class="n">contextlib</span><span class="o">.</span><span class="n">asynccontextmanager</span><span class="p">(</span><span class="n">get_user_manager</span><span class="p">)</span>
<span class="k">async</span> <span class="k">def</span> <span class="nf">create_user</span><span class="p">(</span><span class="n">email</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">password</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">is_superuser</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span><span class="p">):</span>
<span class="hll"> <span class="k">try</span><span class="p">:</span>
<span class="hll"><span class="k">async</span> <span class="k">def</span> <span class="nf">create_user</span><span class="p">(</span><span class="n">email</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">password</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">is_superuser</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span><span class="p">):</span>
</span><span class="hll"> <span class="k">try</span><span class="p">:</span>
</span><span class="hll"> <span class="k">async</span> <span class="k">with</span> <span class="n">get_user_db_context</span><span class="p">()</span> <span class="k">as</span> <span class="n">user_db</span><span class="p">:</span>
</span><span class="hll"> <span class="k">async</span> <span class="k">with</span> <span class="n">get_user_manager_context</span><span class="p">(</span><span class="n">user_db</span><span class="p">)</span> <span class="k">as</span> <span class="n">user_manager</span><span class="p">:</span>
</span><span class="hll"> <span class="n">user</span> <span class="o">=</span> <span class="k">await</span> <span class="n">user_manager</span><span class="o">.</span><span class="n">create</span><span class="p">(</span>