auth.html 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>1 Auth &mdash; Flask-Maple 0.8 documentation</title>
  7. <link rel="stylesheet" href="_static/alabaster.css" type="text/css" />
  8. <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
  9. <script type="text/javascript">
  10. var DOCUMENTATION_OPTIONS = {
  11. URL_ROOT: './',
  12. VERSION: '0.8',
  13. COLLAPSE_INDEX: false,
  14. FILE_SUFFIX: '.html',
  15. HAS_SOURCE: true
  16. };
  17. </script>
  18. <script type="text/javascript" src="_static/jquery.js"></script>
  19. <script type="text/javascript" src="_static/underscore.js"></script>
  20. <script type="text/javascript" src="_static/doctools.js"></script>
  21. <link rel="top" title="Flask-Maple 0.8 documentation" href="index.html" />
  22. <link rel="prev" title="1 Error" href="error.html" />
  23. <link rel="stylesheet" href="_static/custom.css" type="text/css" />
  24. <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
  25. </head>
  26. <body role="document">
  27. <div class="document">
  28. <div class="documentwrapper">
  29. <div class="bodywrapper">
  30. <div class="body" role="main">
  31. <div class="section" id="auth">
  32. <h1>1 Auth<a class="headerlink" href="#auth" title="Permalink to this headline">¶</a></h1>
  33. <div class="section" id="custom-model">
  34. <h2>1.1 Custom model<a class="headerlink" href="#custom-model" title="Permalink to this headline">¶</a></h2>
  35. <p>You custom model if you need more when register or confirm email</p>
  36. <div class="section" id="register-models">
  37. <h3>1.1.1 register_models<a class="headerlink" href="#register-models" title="Permalink to this headline">¶</a></h3>
  38. <div class="highlight-python"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">flask_maple</span> <span class="kn">import</span> <span class="n">Auth</span>
  39. <span class="k">class</span> <span class="nc">MyAuth</span><span class="p">(</span><span class="n">Auth</span><span class="p">):</span>
  40. <span class="k">def</span> <span class="nf">register_models</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">form</span><span class="p">):</span>
  41. <span class="n">user</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">User</span><span class="p">()</span>
  42. <span class="n">user</span><span class="o">.</span><span class="n">username</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">username</span><span class="o">.</span><span class="n">data</span>
  43. <span class="n">user</span><span class="o">.</span><span class="n">password</span> <span class="o">=</span> <span class="n">user</span><span class="o">.</span><span class="n">set_password</span><span class="p">(</span><span class="n">form</span><span class="o">.</span><span class="n">password</span><span class="o">.</span><span class="n">data</span><span class="p">)</span>
  44. <span class="n">user</span><span class="o">.</span><span class="n">email</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">email</span><span class="o">.</span><span class="n">data</span>
  45. <span class="bp">self</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">session</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">user</span><span class="p">)</span>
  46. <span class="bp">self</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">session</span><span class="o">.</span><span class="n">commit</span><span class="p">()</span>
  47. <span class="k">return</span> <span class="n">user</span>
  48. </pre></div>
  49. </div>
  50. </div>
  51. <div class="section" id="confirm-models">
  52. <h3>1.1.2 confirm_models<a class="headerlink" href="#confirm-models" title="Permalink to this headline">¶</a></h3>
  53. <div class="highlight-python"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">MyAuth</span><span class="p">(</span><span class="n">Auth</span><span class="p">):</span>
  54. <span class="k">def</span> <span class="nf">confirm_models</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">user</span><span class="p">):</span>
  55. <span class="n">user</span><span class="o">.</span><span class="n">is_confirmed</span> <span class="o">=</span> <span class="bp">True</span>
  56. <span class="n">user</span><span class="o">.</span><span class="n">confirmed_time</span> <span class="o">=</span> <span class="n">datetime</span><span class="o">.</span><span class="n">now</span><span class="p">()</span>
  57. <span class="bp">self</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">session</span><span class="o">.</span><span class="n">commit</span><span class="p">()</span>
  58. </pre></div>
  59. </div>
  60. </div>
  61. <div class="section" id="email-models">
  62. <h3>1.1.3 email_models<a class="headerlink" href="#email-models" title="Permalink to this headline">¶</a></h3>
  63. <div class="highlight-python"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">MyAuth</span><span class="p">(</span><span class="n">Auth</span><span class="p">):</span>
  64. <span class="k">def</span> <span class="nf">email_models</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
  65. <span class="n">current_user</span><span class="o">.</span><span class="n">send_email_time</span> <span class="o">=</span> <span class="n">datetime</span><span class="o">.</span><span class="n">now</span><span class="p">()</span>
  66. <span class="bp">self</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">session</span><span class="o">.</span><span class="n">commit</span><span class="p">()</span>
  67. </pre></div>
  68. </div>
  69. </div>
  70. </div>
  71. <div class="section" id="custom-form">
  72. <h2>1.2 Custom form<a class="headerlink" href="#custom-form" title="Permalink to this headline">¶</a></h2>
  73. <p>You can add custom form when register Auth</p>
  74. <div class="highlight-python"><div class="highlight"><pre><span></span><span class="n">Auth</span><span class="p">(</span><span class="n">app</span><span class="p">,</span> <span class="n">db</span><span class="o">=</span><span class="n">db</span><span class="p">,</span> <span class="n">mail</span><span class="o">=</span><span class="n">mail</span><span class="p">,</span> <span class="n">user_model</span><span class="o">=</span><span class="n">User</span><span class="p">,</span>
  75. <span class="n">login_form</span><span class="o">=</span><span class="n">loginform</span><span class="p">,</span>
  76. <span class="n">register_form</span><span class="o">=</span><span class="n">registerform</span><span class="p">,</span>
  77. <span class="n">forget_form</span><span class="o">=</span><span class="n">forgetpasswordform</span><span class="p">)</span>
  78. </pre></div>
  79. </div>
  80. <p><strong>template</strong></p>
  81. <div class="highlight-python"><div class="highlight"><pre><span></span><span class="n">templates</span><span class="o">/</span><span class="n">auth</span><span class="o">/</span><span class="n">login</span><span class="o">.</span><span class="n">html</span>
  82. <span class="n">templates</span><span class="o">/</span><span class="n">auth</span><span class="o">/</span><span class="n">register</span><span class="o">.</span><span class="n">html</span>
  83. <span class="n">templates</span><span class="o">/</span><span class="n">auth</span><span class="o">/</span><span class="n">forget</span><span class="o">.</span><span class="n">html</span>
  84. </pre></div>
  85. </div>
  86. </div>
  87. </div>
  88. </div>
  89. </div>
  90. </div>
  91. <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
  92. <div class="sphinxsidebarwrapper">
  93. <h3><a href="index.html">Table Of Contents</a></h3>
  94. <ul>
  95. <li><a class="reference internal" href="#">1 Auth</a><ul>
  96. <li><a class="reference internal" href="#custom-model">1.1 Custom model</a><ul>
  97. <li><a class="reference internal" href="#register-models">1.1.1 register_models</a></li>
  98. <li><a class="reference internal" href="#confirm-models">1.1.2 confirm_models</a></li>
  99. <li><a class="reference internal" href="#email-models">1.1.3 email_models</a></li>
  100. </ul>
  101. </li>
  102. <li><a class="reference internal" href="#custom-form">1.2 Custom form</a></li>
  103. </ul>
  104. </li>
  105. </ul>
  106. <div class="relations">
  107. <h3>Related Topics</h3>
  108. <ul>
  109. <li><a href="index.html">Documentation overview</a><ul>
  110. <li>Previous: <a href="error.html" title="previous chapter">1 Error</a></li>
  111. </ul></li>
  112. </ul>
  113. </div>
  114. <div role="note" aria-label="source link">
  115. <h3>This Page</h3>
  116. <ul class="this-page-menu">
  117. <li><a href="_sources/auth.txt"
  118. rel="nofollow">Show Source</a></li>
  119. </ul>
  120. </div>
  121. <div id="searchbox" style="display: none" role="search">
  122. <h3>Quick search</h3>
  123. <form class="search" action="search.html" method="get">
  124. <input type="text" name="q" />
  125. <input type="submit" value="Go" />
  126. <input type="hidden" name="check_keywords" value="yes" />
  127. <input type="hidden" name="area" value="default" />
  128. </form>
  129. </div>
  130. <script type="text/javascript">$('#searchbox').show(0);</script>
  131. </div>
  132. </div>
  133. <div class="clearer"></div>
  134. </div>
  135. <div class="footer">
  136. &copy;2016, honmaple.
  137. |
  138. Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a>
  139. &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a>
  140. |
  141. <a href="_sources/auth.txt"
  142. rel="nofollow">Page source</a>
  143. </div>
  144. </body>
  145. </html>