Former-commit-id:133dc97f67
[formerlya02aeb236c
] [formerly9f19e3f712
] [formerly06a8b51d6d
[formerly9f19e3f712
[formerly 64fa9254b946eae7e61bbc3f513b7c3696c4f54f]]] Former-commit-id:06a8b51d6d
Former-commit-id:377dcd10b9
[formerly3360eb6c5f
] Former-commit-id:8e80217e59
1661 lines
No EOL
107 KiB
HTML
Executable file
1661 lines
No EOL
107 KiB
HTML
Executable file
|
|
<!DOCTYPE HTML>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<title>Werkzeug Documentation</title>
|
|
<link rel="stylesheet" href="_static/style.css" type="text/css">
|
|
<link rel="stylesheet" href="_static/print.css" type="text/css" media="print">
|
|
<link rel="stylesheet" href="_static/pygments.css" type="text/css">
|
|
<script type="text/javascript">
|
|
var DOCUMENTATION_OPTIONS = {
|
|
URL_ROOT: '#',
|
|
VERSION: '0.6.1'
|
|
};
|
|
</script>
|
|
<script type="text/javascript" src="_static/jquery.js"></script>
|
|
<script type="text/javascript" src="_static/interface.js"></script>
|
|
<script type="text/javascript" src="_static/doctools.js"></script>
|
|
<script type="text/javascript" src="_static/werkzeug.js"></script>
|
|
<link rel="contents" title="Global table of contents" href="contents.html">
|
|
<link rel="index" title="Global index" href="genindex.html">
|
|
<link rel="search" title="Search" href="search.html">
|
|
<link rel="top" title="Werkzeug v0.6.1 documentation" href="index.html">
|
|
<link rel="next" title="Utilities" href="utils.html">
|
|
<link rel="prev" title="HTTP Utilties" href="http.html">
|
|
|
|
</head>
|
|
<body>
|
|
<div class="page">
|
|
<div class="header">
|
|
<h1 class="heading"><a href="index.html"
|
|
title="back to the documentation overview"><span>Werkzeug</span></a></h1>
|
|
</div>
|
|
<ul class="navigation">
|
|
<li class="indexlink"><a href="index.html">Overview</a></li>
|
|
<li><a href="http.html">« HTTP Utilties</a></li>
|
|
<li class="active"><a href="#">Data Structures</a></li>
|
|
<li><a href="utils.html">Utilities »</a></li>
|
|
</ul>
|
|
<div class="body">
|
|
<div id="toc">
|
|
<h3>Table Of Contents</h3>
|
|
<div class="inner"><ul>
|
|
<li><a class="reference external" href="#">Data Structures</a><ul>
|
|
<li><a class="reference external" href="#general-purpose">General Purpose</a></li>
|
|
<li><a class="reference external" href="#http-related">HTTP Related</a></li>
|
|
<li><a class="reference external" href="#others">Others</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="section" id="module-werkzeug">
|
|
<span id="data-structures"></span><h1>Data Structures<a class="headerlink" href="#module-werkzeug" title="Permalink to this headline">¶</a></h1>
|
|
<p>Werkzeug provides some subclasses of common Python objects to extend them
|
|
with additional features. Some of them are used to make them immutable, others
|
|
are used to change some semantics to better work with HTTP.</p>
|
|
<p>You can import all these objects directly from <a class="reference external" href="wsgi.html#module-werkzeug"><tt class="xref py py-mod docutils literal"><span class="pre">werkzeug</span></tt></a>.</p>
|
|
<div class="section" id="general-purpose">
|
|
<h2>General Purpose<a class="headerlink" href="#general-purpose" title="Permalink to this headline">¶</a></h2>
|
|
<p class="versionchanged">
|
|
<span class="versionmodified">Changed in version 0.6: </span>The general purpose classes are now pickleable in each protocol as long
|
|
as the contained objects are pickleable. This means that the
|
|
<a title="werkzeug.FileMultiDict" class="reference internal" href="#werkzeug.FileMultiDict"><tt class="xref py py-class docutils literal"><span class="pre">FileMultiDict</span></tt></a> won’t be pickleable as soon as it contains a
|
|
file.</p>
|
|
<dl class="class">
|
|
<dt id="werkzeug.TypeConversionDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">TypeConversionDict</tt><a class="headerlink" href="#werkzeug.TypeConversionDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Works like a regular dict but the <a title="werkzeug.TypeConversionDict.get" class="reference internal" href="#werkzeug.TypeConversionDict.get"><tt class="xref py py-meth docutils literal"><span class="pre">get()</span></tt></a> method can perform
|
|
type conversions. <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> and <a title="werkzeug.CombinedMultiDict" class="reference internal" href="#werkzeug.CombinedMultiDict"><tt class="xref py py-class docutils literal"><span class="pre">CombinedMultiDict</span></tt></a>
|
|
are subclasses of this class and provide the same feature.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5.</span></p>
|
|
<dl class="method">
|
|
<dt id="werkzeug.TypeConversionDict.get">
|
|
<tt class="descname">get</tt><big>(</big><em>key</em>, <em>default=None</em>, <em>type=None</em><big>)</big><a class="headerlink" href="#werkzeug.TypeConversionDict.get" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the default value if the requested data doesn’t exist.
|
|
If <cite>type</cite> is provided and is a callable it should convert the value,
|
|
return it or raise a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> if that is not possible. In
|
|
this case the function will return the default as if the value was not
|
|
found:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">TypeConversionDict</span><span class="p">(</span><span class="n">foo</span><span class="o">=</span><span class="s">'42'</span><span class="p">,</span> <span class="n">bar</span><span class="o">=</span><span class="s">'blub'</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">'foo'</span><span class="p">,</span> <span class="nb">type</span><span class="o">=</span><span class="nb">int</span><span class="p">)</span>
|
|
<span class="go">42</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">'bar'</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="nb">type</span><span class="o">=</span><span class="nb">int</span><span class="p">)</span>
|
|
<span class="go">-1</span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>default</strong> – The default value to be returned if the key can’t
|
|
be looked up. If not further specified <cite>None</cite> is
|
|
returned.</li>
|
|
<li><strong>type</strong> – A callable that is used to cast the value in the
|
|
<a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a>. If a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> is raised
|
|
by this callable the default value is returned.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.ImmutableTypeConversionDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">ImmutableTypeConversionDict</tt><a class="headerlink" href="#werkzeug.ImmutableTypeConversionDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Works like a <a title="werkzeug.TypeConversionDict" class="reference internal" href="#werkzeug.TypeConversionDict"><tt class="xref py py-class docutils literal"><span class="pre">TypeConversionDict</span></tt></a> but does not support
|
|
modifications.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5.</span></p>
|
|
<dl class="method">
|
|
<dt id="werkzeug.ImmutableTypeConversionDict.copy">
|
|
<tt class="descname">copy</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.ImmutableTypeConversionDict.copy" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Return a shallow mutable copy of this object. Keep in mind that
|
|
the standard library’s <a title="werkzeug.ImmutableTypeConversionDict.copy" class="reference internal" href="#werkzeug.ImmutableTypeConversionDict.copy"><tt class="xref py py-func docutils literal"><span class="pre">copy()</span></tt></a> function is a no-op for this class
|
|
like for any other python immutable type (eg: <tt class="xref py py-class docutils literal"><span class="pre">tuple</span></tt>).</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.MultiDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">MultiDict</tt><big>(</big><em>mapping=None</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>A <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> is a dictionary subclass customized to deal with
|
|
multiple values for the same key which is for example used by the parsing
|
|
functions in the wrappers. This is necessary because some HTML form
|
|
elements pass multiple values for the same key.</p>
|
|
<p><a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> implements all standard dictionary methods.
|
|
Internally, it saves all values for a key as a list, but the standard dict
|
|
access methods will only return the first value for a key. If you want to
|
|
gain access to the other values, too, you have to use the <cite>list</cite> methods as
|
|
explained below.</p>
|
|
<p>Basic Usage:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">MultiDict</span><span class="p">([(</span><span class="s">'a'</span><span class="p">,</span> <span class="s">'b'</span><span class="p">),</span> <span class="p">(</span><span class="s">'a'</span><span class="p">,</span> <span class="s">'c'</span><span class="p">)])</span>
|
|
<span class="gp">>>> </span><span class="n">d</span>
|
|
<span class="go">MultiDict([('a', 'b'), ('a', 'c')])</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="p">[</span><span class="s">'a'</span><span class="p">]</span>
|
|
<span class="go">'b'</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">getlist</span><span class="p">(</span><span class="s">'a'</span><span class="p">)</span>
|
|
<span class="go">['b', 'c']</span>
|
|
<span class="gp">>>> </span><span class="s">'a'</span> <span class="ow">in</span> <span class="n">d</span>
|
|
<span class="go">True</span>
|
|
</pre></div>
|
|
</div>
|
|
<p>It behaves like a normal dict thus all dict functions will only return the
|
|
first value when multiple values for one key are found.</p>
|
|
<p>From Werkzeug 0.3 onwards, the <cite>KeyError</cite> raised by this class is also a
|
|
subclass of the <a title="werkzeug.exceptions.BadRequest" class="reference external" href="exceptions.html#werkzeug.exceptions.BadRequest"><tt class="xref py py-exc docutils literal"><span class="pre">BadRequest</span></tt></a> HTTP exception and will
|
|
render a page for a <tt class="docutils literal"><span class="pre">400</span> <span class="pre">BAD</span> <span class="pre">REQUEST</span></tt> if caught in a catch-all for HTTP
|
|
exceptions.</p>
|
|
<p>A <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> can be constructed from an iterable of
|
|
<tt class="docutils literal"><span class="pre">(key,</span> <span class="pre">value)</span></tt> tuples, a dict, a <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> or from Werkzeug 0.2
|
|
onwards some keyword parameters.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>mapping</strong> – the initial value for the <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a>. Either a
|
|
regular dict, an iterable of <tt class="docutils literal"><span class="pre">(key,</span> <span class="pre">value)</span></tt> tuples
|
|
or <cite>None</cite>.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.add">
|
|
<tt class="descname">add</tt><big>(</big><em>key</em>, <em>value</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.add" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Adds a new value for the key.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.6.</span></p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – the key for the value.</li>
|
|
<li><strong>value</strong> – the value to add.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.MultiDict.clear">
|
|
<tt class="descname">clear</tt><a class="headerlink" href="#werkzeug.MultiDict.clear" title="Permalink to this definition">¶</a></dt>
|
|
<dd>D.clear() -> None. Remove all items from D.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.copy">
|
|
<tt class="descname">copy</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.copy" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Return a shallow copy of this object.</dd></dl>
|
|
|
|
<dl class="staticmethod">
|
|
<dt id="werkzeug.MultiDict.fromkeys">
|
|
<em class="property">static </em><tt class="descname">fromkeys</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.fromkeys" title="Permalink to this definition">¶</a></dt>
|
|
<dd>dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
|
|
v defaults to None.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.get">
|
|
<tt class="descname">get</tt><big>(</big><em>key</em>, <em>default=None</em>, <em>type=None</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.get" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the default value if the requested data doesn’t exist.
|
|
If <cite>type</cite> is provided and is a callable it should convert the value,
|
|
return it or raise a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> if that is not possible. In
|
|
this case the function will return the default as if the value was not
|
|
found:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">TypeConversionDict</span><span class="p">(</span><span class="n">foo</span><span class="o">=</span><span class="s">'42'</span><span class="p">,</span> <span class="n">bar</span><span class="o">=</span><span class="s">'blub'</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">'foo'</span><span class="p">,</span> <span class="nb">type</span><span class="o">=</span><span class="nb">int</span><span class="p">)</span>
|
|
<span class="go">42</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">'bar'</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="nb">type</span><span class="o">=</span><span class="nb">int</span><span class="p">)</span>
|
|
<span class="go">-1</span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>default</strong> – The default value to be returned if the key can’t
|
|
be looked up. If not further specified <cite>None</cite> is
|
|
returned.</li>
|
|
<li><strong>type</strong> – A callable that is used to cast the value in the
|
|
<a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a>. If a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> is raised
|
|
by this callable the default value is returned.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.getlist">
|
|
<tt class="descname">getlist</tt><big>(</big><em>key</em>, <em>type=None</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.getlist" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the list of items for a given key. If that key is not in the
|
|
<cite>MultiDict</cite>, the return value will be an empty list. Just as <cite>get</cite>
|
|
<cite>getlist</cite> accepts a <cite>type</cite> parameter. All items will be converted
|
|
with the callable defined there.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>type</strong> – A callable that is used to cast the value in the
|
|
<a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a>. If a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> is raised
|
|
by this callable the value will be removed from the list.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">a <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt> of all the values for the key.</p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.MultiDict.has_key">
|
|
<tt class="descname">has_key</tt><a class="headerlink" href="#werkzeug.MultiDict.has_key" title="Permalink to this definition">¶</a></dt>
|
|
<dd>D.has_key(k) -> True if D has a key k, else False</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.items">
|
|
<tt class="descname">items</tt><big>(</big><em>multi=False</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.items" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return a list of <tt class="docutils literal"><span class="pre">(key,</span> <span class="pre">value)</span></tt> pairs.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
<li><strong>multi</strong> – If set to <cite>True</cite> the list returned will have a
|
|
pair for each value of each key. Otherwise it
|
|
will only contain pairs for the first value of
|
|
each key.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">a <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.iteritems">
|
|
<tt class="descname">iteritems</tt><big>(</big><em>multi=False</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.iteritems" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Like <a title="werkzeug.MultiDict.items" class="reference internal" href="#werkzeug.MultiDict.items"><tt class="xref py py-meth docutils literal"><span class="pre">items()</span></tt></a> but returns an iterator.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.MultiDict.iterkeys">
|
|
<tt class="descname">iterkeys</tt><a class="headerlink" href="#werkzeug.MultiDict.iterkeys" title="Permalink to this definition">¶</a></dt>
|
|
<dd>D.iterkeys() -> an iterator over the keys of D</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.iterlists">
|
|
<tt class="descname">iterlists</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.iterlists" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return a list of all values associated with a key.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a class:<cite>list</cite></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.iterlistvalues">
|
|
<tt class="descname">iterlistvalues</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.iterlistvalues" title="Permalink to this definition">¶</a></dt>
|
|
<dd>like <a title="werkzeug.MultiDict.listvalues" class="reference internal" href="#werkzeug.MultiDict.listvalues"><tt class="xref py py-meth docutils literal"><span class="pre">listvalues()</span></tt></a> but returns an iterator.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.itervalues">
|
|
<tt class="descname">itervalues</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.itervalues" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Like <a title="werkzeug.MultiDict.values" class="reference internal" href="#werkzeug.MultiDict.values"><tt class="xref py py-meth docutils literal"><span class="pre">values()</span></tt></a> but returns an iterator.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.MultiDict.keys">
|
|
<tt class="descname">keys</tt><a class="headerlink" href="#werkzeug.MultiDict.keys" title="Permalink to this definition">¶</a></dt>
|
|
<dd>D.keys() -> list of D’s keys</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.lists">
|
|
<tt class="descname">lists</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.lists" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return a list of <tt class="docutils literal"><span class="pre">(key,</span> <span class="pre">value)</span></tt> pairs, where values is the list of
|
|
all values associated with the key.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.listvalues">
|
|
<tt class="descname">listvalues</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.listvalues" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return a list of all values associated with a key. Zipping
|
|
<a title="werkzeug.MultiDict.keys" class="reference internal" href="#werkzeug.MultiDict.keys"><tt class="xref py py-meth docutils literal"><span class="pre">keys()</span></tt></a> and this is the same as calling <a title="werkzeug.MultiDict.lists" class="reference internal" href="#werkzeug.MultiDict.lists"><tt class="xref py py-meth docutils literal"><span class="pre">lists()</span></tt></a>:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">MultiDict</span><span class="p">({</span><span class="s">"foo"</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]})</span>
|
|
<span class="gp">>>> </span><span class="nb">zip</span><span class="p">(</span><span class="n">d</span><span class="o">.</span><span class="n">keys</span><span class="p">(),</span> <span class="n">d</span><span class="o">.</span><span class="n">listvalues</span><span class="p">())</span> <span class="o">==</span> <span class="n">d</span><span class="o">.</span><span class="n">lists</span><span class="p">()</span>
|
|
<span class="go">True</span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.pop">
|
|
<tt class="descname">pop</tt><big>(</big><em>key</em>, <em>default=no value</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.pop" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Pop the first item for a list on the dict. Afterwards the
|
|
key is removed from the dict, so additional values are discarded:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">MultiDict</span><span class="p">({</span><span class="s">"foo"</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]})</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s">"foo"</span><span class="p">)</span>
|
|
<span class="go">1</span>
|
|
<span class="gp">>>> </span><span class="s">"foo"</span> <span class="ow">in</span> <span class="n">d</span>
|
|
<span class="go">False</span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – the key to pop.</li>
|
|
<li><strong>default</strong> – if provided the value to return if the key was
|
|
not in the dictionary.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.popitem">
|
|
<tt class="descname">popitem</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.popitem" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Pop an item from the dict.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.popitemlist">
|
|
<tt class="descname">popitemlist</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.popitemlist" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Pop a <tt class="docutils literal"><span class="pre">(key,</span> <span class="pre">list)</span></tt> tuple from the dict.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.poplist">
|
|
<tt class="descname">poplist</tt><big>(</big><em>key</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.poplist" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Pop the list for a key from the dict. If the key is not in the dict
|
|
an empty list is returned.</p>
|
|
<p class="versionchanged">
|
|
<span class="versionmodified">Changed in version 0.5: </span>If the key does no longer exist a list is returned instead of
|
|
raising an error.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.setdefault">
|
|
<tt class="descname">setdefault</tt><big>(</big><em>key</em>, <em>default=None</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.setdefault" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Returns the value for the key if it is in the dict, otherwise it
|
|
returns <cite>default</cite> and sets that value for <cite>key</cite>.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>default</strong> – The default value to be returned if the key is not
|
|
in the dict. If not further specified it’s <cite>None</cite>.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.setlist">
|
|
<tt class="descname">setlist</tt><big>(</big><em>key</em>, <em>new_list</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.setlist" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Remove the old values for a key and add new ones. Note that the list
|
|
you pass the values in will be shallow-copied before it is inserted in
|
|
the dictionary.</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">MultiDict</span><span class="p">()</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">setlist</span><span class="p">(</span><span class="s">'foo'</span><span class="p">,</span> <span class="p">[</span><span class="s">'1'</span><span class="p">,</span> <span class="s">'2'</span><span class="p">])</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="p">[</span><span class="s">'foo'</span><span class="p">]</span>
|
|
<span class="go">'1'</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">getlist</span><span class="p">(</span><span class="s">'foo'</span><span class="p">)</span>
|
|
<span class="go">['1', '2']</span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key for which the values are set.</li>
|
|
<li><strong>new_list</strong> – An iterable with the new values for the key. Old values
|
|
are removed first.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.setlistdefault">
|
|
<tt class="descname">setlistdefault</tt><big>(</big><em>key</em>, <em>default_list=None</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.setlistdefault" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Like <cite>setdefault</cite> but sets multiple values. The list returned
|
|
is not a copy, but the list that is actually used internally. This
|
|
means that you can put new values into the dict by appending items
|
|
to the list:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">MultiDict</span><span class="p">({</span><span class="s">"foo"</span><span class="p">:</span> <span class="mi">1</span><span class="p">})</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">setlistdefault</span><span class="p">(</span><span class="s">"foo"</span><span class="p">)</span><span class="o">.</span><span class="n">extend</span><span class="p">([</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">])</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">getlist</span><span class="p">(</span><span class="s">"foo"</span><span class="p">)</span>
|
|
<span class="go">[1, 2, 3]</span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>default</strong> – An iterable of default values. It is either copied
|
|
(in case it was a list) or converted into a list
|
|
before returned.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">a <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.to_dict">
|
|
<tt class="descname">to_dict</tt><big>(</big><em>flat=True</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.to_dict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the contents as regular dict. If <cite>flat</cite> is <cite>True</cite> the
|
|
returned dict will only have the first item present, if <cite>flat</cite> is
|
|
<cite>False</cite> all values will be returned as lists.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
<li><strong>flat</strong> – If set to <cite>False</cite> the dict returned will have lists
|
|
with all the values in it. Otherwise it will only
|
|
contain the first value for each key.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">a <a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/stdtypes.html#dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a></p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.update">
|
|
<tt class="descname">update</tt><big>(</big><em>other_dict</em><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.update" title="Permalink to this definition">¶</a></dt>
|
|
<dd>update() extends rather than replaces existing key lists.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.MultiDict.values">
|
|
<tt class="descname">values</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.MultiDict.values" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Returns a list of the first value on every key’s value list.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">a <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt>.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.OrderedMultiDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">OrderedMultiDict</tt><big>(</big><em>mapping=None</em><big>)</big><a class="headerlink" href="#werkzeug.OrderedMultiDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Works like a regular <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> but preserves the
|
|
order of the fields. To convert the ordered multi dict into a
|
|
list you can use the <tt class="xref py py-meth docutils literal"><span class="pre">items()</span></tt> method and pass it <tt class="docutils literal"><span class="pre">multi=True</span></tt>.</p>
|
|
<p>In general an <a title="werkzeug.OrderedMultiDict" class="reference internal" href="#werkzeug.OrderedMultiDict"><tt class="xref py py-class docutils literal"><span class="pre">OrderedMultiDict</span></tt></a> is an order of magnitude
|
|
slower than a <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a>.</p>
|
|
<div class="admonition-note admonition ">
|
|
<p class="first admonition-title">note</p>
|
|
<p class="last">Due to a limitation in Python you cannot convert an ordered
|
|
multi dict into a regular dict by using <tt class="docutils literal"><span class="pre">dict(multidict)</span></tt>.
|
|
Instead you have to use the <tt class="xref py py-meth docutils literal"><span class="pre">to_dict()</span></tt> method, otherwise
|
|
the internal bucket objects are exposed.</p>
|
|
</div>
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.ImmutableMultiDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">ImmutableMultiDict</tt><big>(</big><em>mapping=None</em><big>)</big><a class="headerlink" href="#werkzeug.ImmutableMultiDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>An immutable <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a>.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5.</span></p>
|
|
<dl class="method">
|
|
<dt id="werkzeug.ImmutableMultiDict.copy">
|
|
<tt class="descname">copy</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.ImmutableMultiDict.copy" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Return a shallow mutable copy of this object. Keep in mind that
|
|
the standard library’s <a title="werkzeug.ImmutableMultiDict.copy" class="reference internal" href="#werkzeug.ImmutableMultiDict.copy"><tt class="xref py py-func docutils literal"><span class="pre">copy()</span></tt></a> function is a no-op for this class
|
|
like for any other python immutable type (eg: <tt class="xref py py-class docutils literal"><span class="pre">tuple</span></tt>).</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.ImmutableOrderedMultiDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">ImmutableOrderedMultiDict</tt><big>(</big><em>mapping=None</em><big>)</big><a class="headerlink" href="#werkzeug.ImmutableOrderedMultiDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>An immutable <a title="werkzeug.OrderedMultiDict" class="reference internal" href="#werkzeug.OrderedMultiDict"><tt class="xref py py-class docutils literal"><span class="pre">OrderedMultiDict</span></tt></a>.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.6.</span></p>
|
|
<dl class="method">
|
|
<dt id="werkzeug.ImmutableOrderedMultiDict.copy">
|
|
<tt class="descname">copy</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.ImmutableOrderedMultiDict.copy" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Return a shallow mutable copy of this object. Keep in mind that
|
|
the standard library’s <a title="werkzeug.ImmutableOrderedMultiDict.copy" class="reference internal" href="#werkzeug.ImmutableOrderedMultiDict.copy"><tt class="xref py py-func docutils literal"><span class="pre">copy()</span></tt></a> function is a no-op for this class
|
|
like for any other python immutable type (eg: <tt class="xref py py-class docutils literal"><span class="pre">tuple</span></tt>).</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.CombinedMultiDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">CombinedMultiDict</tt><big>(</big><em>dicts=None</em><big>)</big><a class="headerlink" href="#werkzeug.CombinedMultiDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>A read only <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> that you can pass multiple <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a>
|
|
instances as sequence and it will combine the return values of all wrapped
|
|
dicts:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">werkzeug</span> <span class="kn">import</span> <span class="n">MultiDict</span><span class="p">,</span> <span class="n">CombinedMultiDict</span>
|
|
<span class="gp">>>> </span><span class="n">post</span> <span class="o">=</span> <span class="n">MultiDict</span><span class="p">([(</span><span class="s">'foo'</span><span class="p">,</span> <span class="s">'bar'</span><span class="p">)])</span>
|
|
<span class="gp">>>> </span><span class="n">get</span> <span class="o">=</span> <span class="n">MultiDict</span><span class="p">([(</span><span class="s">'blub'</span><span class="p">,</span> <span class="s">'blah'</span><span class="p">)])</span>
|
|
<span class="gp">>>> </span><span class="n">combined</span> <span class="o">=</span> <span class="n">CombinedMultiDict</span><span class="p">([</span><span class="n">get</span><span class="p">,</span> <span class="n">post</span><span class="p">])</span>
|
|
<span class="gp">>>> </span><span class="n">combined</span><span class="p">[</span><span class="s">'foo'</span><span class="p">]</span>
|
|
<span class="go">'bar'</span>
|
|
<span class="gp">>>> </span><span class="n">combined</span><span class="p">[</span><span class="s">'blub'</span><span class="p">]</span>
|
|
<span class="go">'blah'</span>
|
|
</pre></div>
|
|
</div>
|
|
<p>This works for all read operations and will raise a <cite>TypeError</cite> for
|
|
methods that usually change data which isn’t possible.</p>
|
|
<p>From Werkzeug 0.3 onwards, the <cite>KeyError</cite> raised by this class is also a
|
|
subclass of the <a title="werkzeug.exceptions.BadRequest" class="reference external" href="exceptions.html#werkzeug.exceptions.BadRequest"><tt class="xref py py-exc docutils literal"><span class="pre">BadRequest</span></tt></a> HTTP exception and will
|
|
render a page for a <tt class="docutils literal"><span class="pre">400</span> <span class="pre">BAD</span> <span class="pre">REQUEST</span></tt> if caught in a catch-all for HTTP
|
|
exceptions.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.ImmutableDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">ImmutableDict</tt><a class="headerlink" href="#werkzeug.ImmutableDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>An immutable <a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/stdtypes.html#dict"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a>.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5.</span></p>
|
|
<dl class="method">
|
|
<dt id="werkzeug.ImmutableDict.copy">
|
|
<tt class="descname">copy</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.ImmutableDict.copy" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Return a shallow mutable copy of this object. Keep in mind that
|
|
the standard library’s <a title="werkzeug.ImmutableDict.copy" class="reference internal" href="#werkzeug.ImmutableDict.copy"><tt class="xref py py-func docutils literal"><span class="pre">copy()</span></tt></a> function is a no-op for this class
|
|
like for any other python immutable type (eg: <tt class="xref py py-class docutils literal"><span class="pre">tuple</span></tt>).</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.ImmutableList">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">ImmutableList</tt><a class="headerlink" href="#werkzeug.ImmutableList" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>An immutable <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt>.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5.</span></p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Private :</th><td class="field-body"></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.FileMultiDict">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">FileMultiDict</tt><big>(</big><em>mapping=None</em><big>)</big><a class="headerlink" href="#werkzeug.FileMultiDict" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>A special <a title="werkzeug.MultiDict" class="reference internal" href="#werkzeug.MultiDict"><tt class="xref py py-class docutils literal"><span class="pre">MultiDict</span></tt></a> that has convenience methods to add
|
|
files to it. This is used for <a title="werkzeug.EnvironBuilder" class="reference external" href="test.html#werkzeug.EnvironBuilder"><tt class="xref py py-class docutils literal"><span class="pre">EnvironBuilder</span></tt></a> and generally
|
|
useful for unittesting.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5.</span></p>
|
|
<dl class="method">
|
|
<dt id="werkzeug.FileMultiDict.add_file">
|
|
<tt class="descname">add_file</tt><big>(</big><em>name</em>, <em>file</em>, <em>filename=None</em>, <em>content_type=None</em><big>)</big><a class="headerlink" href="#werkzeug.FileMultiDict.add_file" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Adds a new file to the dict. <cite>file</cite> can be a file name or
|
|
a <tt class="xref py py-class docutils literal"><span class="pre">file</span></tt>-like or a <a title="werkzeug.FileStorage" class="reference internal" href="#werkzeug.FileStorage"><tt class="xref py py-class docutils literal"><span class="pre">FileStorage</span></tt></a> object.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>name</strong> – the name of the field.</li>
|
|
<li><strong>file</strong> – a filename or <tt class="xref py py-class docutils literal"><span class="pre">file</span></tt>-like object</li>
|
|
<li><strong>filename</strong> – an optional filename</li>
|
|
<li><strong>content_type</strong> – an optional content type</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
</div>
|
|
<div class="section" id="http-related">
|
|
<span id="http-datastructures"></span><h2>HTTP Related<a class="headerlink" href="#http-related" title="Permalink to this headline">¶</a></h2>
|
|
<dl class="class">
|
|
<dt id="werkzeug.Headers">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">Headers</tt><big>(</big><span class="optional">[</span><em>defaults</em><span class="optional">]</span><big>)</big><a class="headerlink" href="#werkzeug.Headers" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>An object that stores some headers. It has a dict-like interface
|
|
but is ordered and can store the same keys multiple times.</p>
|
|
<p>This data structure is useful if you want a nicer way to handle WSGI
|
|
headers which are stored as tuples in a list.</p>
|
|
<p>From Werkzeug 0.3 onwards, the <tt class="xref py py-exc docutils literal"><span class="pre">KeyError</span></tt> raised by this class is
|
|
also a subclass of the <a title="werkzeug.exceptions.BadRequest" class="reference external" href="exceptions.html#werkzeug.exceptions.BadRequest"><tt class="xref py py-class docutils literal"><span class="pre">BadRequest</span></tt></a> HTTP exception
|
|
and will render a page for a <tt class="docutils literal"><span class="pre">400</span> <span class="pre">BAD</span> <span class="pre">REQUEST</span></tt> if caught in a
|
|
catch-all for HTTP exceptions.</p>
|
|
<p>Headers is mostly compatible with the Python <a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/wsgiref.html#wsgiref.headers.Headers"><tt class="xref py py-class docutils literal"><span class="pre">wsgiref.headers.Headers</span></tt></a>
|
|
class, with the exception of <cite>__getitem__</cite>. <a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/wsgiref.html#module-wsgiref"><tt class="xref py py-mod docutils literal"><span class="pre">wsgiref</span></tt></a> will return
|
|
<cite>None</cite> for <tt class="docutils literal"><span class="pre">headers['missing']</span></tt>, whereas <a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a> will raise
|
|
a <tt class="xref py py-class docutils literal"><span class="pre">KeyError</span></tt>.</p>
|
|
<p>To create a new <a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a> object pass it a list or dict of headers
|
|
which are used as default values. This does not reuse the list passed
|
|
to the constructor for internal usage. To create a <a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a>
|
|
object that uses as internal storage the list or list-like object you
|
|
can use the <a title="werkzeug.Headers.linked" class="reference internal" href="#werkzeug.Headers.linked"><tt class="xref py py-meth docutils literal"><span class="pre">linked()</span></tt></a> class method.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>defaults</strong> – The list of default values for the <a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a>.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.add">
|
|
<tt class="descname">add</tt><big>(</big><em>_key</em>, <em>_value</em>, <em>**kw</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.add" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Add a new header tuple to the list.</p>
|
|
<p>Keyword arguments can specify additional parameters for the header
|
|
value, with underscores converted to dashes:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">Headers</span><span class="p">()</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s">'Content-Type'</span><span class="p">,</span> <span class="s">'text/plain'</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s">'Content-Disposition'</span><span class="p">,</span> <span class="s">'attachment'</span><span class="p">,</span> <span class="n">filename</span><span class="o">=</span><span class="s">'foo.png'</span><span class="p">)</span>
|
|
</pre></div>
|
|
</div>
|
|
<p>The keyword argument dumping uses <tt class="xref py py-func docutils literal"><span class="pre">dump_options_header()</span></tt>
|
|
behind the scenes.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.4.1: </span>keyword arguments were added for <a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/wsgiref.html#module-wsgiref"><tt class="xref py py-mod docutils literal"><span class="pre">wsgiref</span></tt></a> compatibility.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.add_header">
|
|
<tt class="descname">add_header</tt><big>(</big><em>_key</em>, <em>_value</em>, <em>**_kw</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.add_header" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Add a new header tuple to the list.</p>
|
|
<p>An alias for <a title="werkzeug.Headers.add" class="reference internal" href="#werkzeug.Headers.add"><tt class="xref py py-meth docutils literal"><span class="pre">add()</span></tt></a> for compatibility with the <a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/wsgiref.html#module-wsgiref"><tt class="xref py py-mod docutils literal"><span class="pre">wsgiref</span></tt></a>
|
|
<a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/wsgiref.html#wsgiref.headers.Headers.add_header"><tt class="xref py py-meth docutils literal"><span class="pre">add_header()</span></tt></a> method.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.clear">
|
|
<tt class="descname">clear</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.Headers.clear" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Clears all headers.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.extend">
|
|
<tt class="descname">extend</tt><big>(</big><em>iterable</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.extend" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Extend the headers with a dict or an iterable yielding keys and
|
|
values.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.get">
|
|
<tt class="descname">get</tt><big>(</big><em>key</em>, <em>default=None</em>, <em>type=None</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.get" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the default value if the requested data doesn’t exist.
|
|
If <cite>type</cite> is provided and is a callable it should convert the value,
|
|
return it or raise a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> if that is not possible. In
|
|
this case the function will return the default as if the value was not
|
|
found:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">Headers</span><span class="p">([(</span><span class="s">'Content-Length'</span><span class="p">,</span> <span class="s">'42'</span><span class="p">)])</span>
|
|
<span class="gp">>>> </span><span class="n">d</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s">'Content-Length'</span><span class="p">,</span> <span class="nb">type</span><span class="o">=</span><span class="nb">int</span><span class="p">)</span>
|
|
<span class="go">42</span>
|
|
</pre></div>
|
|
</div>
|
|
<p>If a headers object is bound you must not add unicode strings
|
|
because no encoding takes place.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>default</strong> – The default value to be returned if the key can’t
|
|
be looked up. If not further specified <cite>None</cite> is
|
|
returned.</li>
|
|
<li><strong>type</strong> – A callable that is used to cast the value in the
|
|
<a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a>. If a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> is raised
|
|
by this callable the default value is returned.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.get_all">
|
|
<tt class="descname">get_all</tt><big>(</big><em>name</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.get_all" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return a list of all the values for the named field.</p>
|
|
<p>This method is compatible with the <a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/wsgiref.html#module-wsgiref"><tt class="xref py py-mod docutils literal"><span class="pre">wsgiref</span></tt></a>
|
|
<a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/wsgiref.html#wsgiref.headers.Headers.get_all"><tt class="xref py py-meth docutils literal"><span class="pre">get_all()</span></tt></a> method.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.getlist">
|
|
<tt class="descname">getlist</tt><big>(</big><em>key</em>, <em>type=None</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.getlist" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the list of items for a given key. If that key is not in the
|
|
<a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a>, the return value will be an empty list. Just as
|
|
<a title="werkzeug.Headers.get" class="reference internal" href="#werkzeug.Headers.get"><tt class="xref py py-meth docutils literal"><span class="pre">get()</span></tt></a> <a title="werkzeug.Headers.getlist" class="reference internal" href="#werkzeug.Headers.getlist"><tt class="xref py py-meth docutils literal"><span class="pre">getlist()</span></tt></a> accepts a <cite>type</cite> parameter. All items will
|
|
be converted with the callable defined there.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>type</strong> – A callable that is used to cast the value in the
|
|
<a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a>. If a <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt> is raised
|
|
by this callable the value will be removed from the list.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">a <tt class="xref py py-class docutils literal"><span class="pre">list</span></tt> of all the values for the key.</p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.has_key">
|
|
<tt class="descname">has_key</tt><big>(</big><em>key</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.has_key" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Check if a key is present.</dd></dl>
|
|
|
|
<dl class="classmethod">
|
|
<dt id="werkzeug.Headers.linked">
|
|
<em class="property">classmethod </em><tt class="descname">linked</tt><big>(</big><em>headerlist</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.linked" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Create a new <a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a> object that uses the list of headers
|
|
passed as internal storage:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">headerlist</span> <span class="o">=</span> <span class="p">[(</span><span class="s">'Content-Length'</span><span class="p">,</span> <span class="s">'40'</span><span class="p">)]</span>
|
|
<span class="gp">>>> </span><span class="n">headers</span> <span class="o">=</span> <span class="n">Headers</span><span class="o">.</span><span class="n">linked</span><span class="p">(</span><span class="n">headerlist</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">headers</span><span class="p">[</span><span class="s">'Content-Type'</span><span class="p">]</span> <span class="o">=</span> <span class="s">'text/html'</span>
|
|
<span class="gp">>>> </span><span class="n">headerlist</span>
|
|
<span class="go">[('Content-Length', '40'), ('Content-Type', 'text/html')]</span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
<li><strong>headerlist</strong> – The list of headers the class is linked to.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">new linked <a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a> object.</p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.pop">
|
|
<tt class="descname">pop</tt><big>(</big><em>key=None</em>, <em>default=no value</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.pop" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Removes and returns a key or index.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
|
|
<li><strong>key</strong> – The key to be popped. If this is an integer the item at
|
|
that position is removed, if it’s a string the value for
|
|
that key is. If the key is omitted or <cite>None</cite> the last
|
|
item is removed.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">an item.</p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.popitem">
|
|
<tt class="descname">popitem</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.Headers.popitem" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Removes a key or index and returns a (key, value) item.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.remove">
|
|
<tt class="descname">remove</tt><big>(</big><em>key</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.remove" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Remove a key.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be removed.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.set">
|
|
<tt class="descname">set</tt><big>(</big><em>_key</em>, <em>_value</em>, <em>**kw</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.set" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Remove all header tuples for <cite>key</cite> and add a new one. The newly
|
|
added key either appears at the end of the list if there was no
|
|
entry or replaces the first one.</p>
|
|
<p>Keyword arguments can specify additional parameters for the header
|
|
value, with underscores converted to dashes. See <a title="werkzeug.Headers.add" class="reference internal" href="#werkzeug.Headers.add"><tt class="xref py py-meth docutils literal"><span class="pre">add()</span></tt></a> for
|
|
more information.</p>
|
|
<p class="versionchanged">
|
|
<span class="versionmodified">Changed in version 0.6.1: </span><a title="werkzeug.Headers.set" class="reference internal" href="#werkzeug.Headers.set"><tt class="xref py py-meth docutils literal"><span class="pre">set()</span></tt></a> now accepts the same arguments as <a title="werkzeug.Headers.add" class="reference internal" href="#werkzeug.Headers.add"><tt class="xref py py-meth docutils literal"><span class="pre">add()</span></tt></a>.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be inserted.</li>
|
|
<li><strong>value</strong> – The value to be inserted.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.setdefault">
|
|
<tt class="descname">setdefault</tt><big>(</big><em>key</em>, <em>value</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.setdefault" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Returns the value for the key if it is in the dict, otherwise it
|
|
returns <cite>default</cite> and sets that value for <cite>key</cite>.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
<li><strong>default</strong> – The default value to be returned if the key is not
|
|
in the dict. If not further specified it’s <cite>None</cite>.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Headers.to_list">
|
|
<tt class="descname">to_list</tt><big>(</big><em>charset='utf-8'</em><big>)</big><a class="headerlink" href="#werkzeug.Headers.to_list" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Convert the headers into a list and converts the unicode header
|
|
items to the specified charset.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Returns:</th><td class="field-body">list</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.EnvironHeaders">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">EnvironHeaders</tt><big>(</big><em>environ</em><big>)</big><a class="headerlink" href="#werkzeug.EnvironHeaders" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Read only version of the headers from a WSGI environment. This
|
|
provides the same interface as <cite>Headers</cite> and is constructed from
|
|
a WSGI environment.</p>
|
|
<p>From Werkzeug 0.3 onwards, the <cite>KeyError</cite> raised by this class is also a
|
|
subclass of the <a title="werkzeug.exceptions.BadRequest" class="reference external" href="exceptions.html#werkzeug.exceptions.BadRequest"><tt class="xref py py-exc docutils literal"><span class="pre">BadRequest</span></tt></a> HTTP exception and will
|
|
render a page for a <tt class="docutils literal"><span class="pre">400</span> <span class="pre">BAD</span> <span class="pre">REQUEST</span></tt> if caught in a catch-all for
|
|
HTTP exceptions.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.HeaderSet">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">HeaderSet</tt><big>(</big><em>headers=None</em>, <em>on_update=None</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Similar to the <a title="werkzeug.ETags" class="reference internal" href="#werkzeug.ETags"><tt class="xref py py-class docutils literal"><span class="pre">ETags</span></tt></a> class this implements a set-like structure.
|
|
Unlike <a title="werkzeug.ETags" class="reference internal" href="#werkzeug.ETags"><tt class="xref py py-class docutils literal"><span class="pre">ETags</span></tt></a> this is case insensitive and used for vary, allow, and
|
|
content-language headers.</p>
|
|
<p>If not constructed using the <a title="werkzeug.parse_set_header" class="reference external" href="http.html#werkzeug.parse_set_header"><tt class="xref py py-func docutils literal"><span class="pre">parse_set_header()</span></tt></a> function the
|
|
instantiation works like this:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">hs</span> <span class="o">=</span> <span class="n">HeaderSet</span><span class="p">([</span><span class="s">'foo'</span><span class="p">,</span> <span class="s">'bar'</span><span class="p">,</span> <span class="s">'baz'</span><span class="p">])</span>
|
|
<span class="gp">>>> </span><span class="n">hs</span>
|
|
<span class="go">HeaderSet(['foo', 'bar', 'baz'])</span>
|
|
</pre></div>
|
|
</div>
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.add">
|
|
<tt class="descname">add</tt><big>(</big><em>header</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.add" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Add a new header to the set.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.as_set">
|
|
<tt class="descname">as_set</tt><big>(</big><em>preserve_casing=False</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.as_set" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the set as real python set type. When calling this, all
|
|
the items are converted to lowercase and the ordering is lost.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>preserve_casing</strong> – if set to <cite>True</cite> the items in the set returned
|
|
will have the original case like in the
|
|
<a title="werkzeug.HeaderSet" class="reference internal" href="#werkzeug.HeaderSet"><tt class="xref py py-class docutils literal"><span class="pre">HeaderSet</span></tt></a>, otherwise they will
|
|
be lowercase.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.clear">
|
|
<tt class="descname">clear</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.clear" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Clear the set.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.discard">
|
|
<tt class="descname">discard</tt><big>(</big><em>header</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.discard" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Like <a title="werkzeug.HeaderSet.remove" class="reference internal" href="#werkzeug.HeaderSet.remove"><tt class="xref py py-meth docutils literal"><span class="pre">remove()</span></tt></a> but ignores errors.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>header</strong> – the header to be discarded.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.find">
|
|
<tt class="descname">find</tt><big>(</big><em>header</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.find" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the index of the header in the set or return -1 if not found.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>header</strong> – the header to be looked up.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.index">
|
|
<tt class="descname">index</tt><big>(</big><em>header</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.index" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Return the index of the header in the set or raise an
|
|
<tt class="xref py py-exc docutils literal"><span class="pre">IndexError</span></tt>.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>header</strong> – the header to be looked up.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.remove">
|
|
<tt class="descname">remove</tt><big>(</big><em>header</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.remove" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Remove a header from the set. This raises an <tt class="xref py py-exc docutils literal"><span class="pre">KeyError</span></tt> if the
|
|
header is not in the set.</p>
|
|
<p class="versionchanged">
|
|
<span class="versionmodified">Changed in version 0.5: </span>In older versions a <tt class="xref py py-exc docutils literal"><span class="pre">IndexError</span></tt> was raised instead of a
|
|
<tt class="xref py py-exc docutils literal"><span class="pre">KeyError</span></tt> if the object was missing.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>header</strong> – the header to be removed.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.to_header">
|
|
<tt class="descname">to_header</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.to_header" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Convert the header set into an HTTP header string.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.HeaderSet.update">
|
|
<tt class="descname">update</tt><big>(</big><em>iterable</em><big>)</big><a class="headerlink" href="#werkzeug.HeaderSet.update" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Add all the headers from the iterable to the set.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>iterable</strong> – updates the set with the items from the iterable.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.Accept">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">Accept</tt><big>(</big><em>values=()</em><big>)</big><a class="headerlink" href="#werkzeug.Accept" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>An <a title="werkzeug.Accept" class="reference internal" href="#werkzeug.Accept"><tt class="xref py py-class docutils literal"><span class="pre">Accept</span></tt></a> object is just a list subclass for lists of
|
|
<tt class="docutils literal"><span class="pre">(value,</span> <span class="pre">quality)</span></tt> tuples. It is automatically sorted by quality.</p>
|
|
<p>All <a title="werkzeug.Accept" class="reference internal" href="#werkzeug.Accept"><tt class="xref py py-class docutils literal"><span class="pre">Accept</span></tt></a> objects work similar to a list but provide extra
|
|
functionality for working with the data. Containment checks are
|
|
normalized to the rules of that header:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="n">a</span> <span class="o">=</span> <span class="n">CharsetAccept</span><span class="p">([(</span><span class="s">'ISO-8859-1'</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="p">(</span><span class="s">'utf-8'</span><span class="p">,</span> <span class="mf">0.7</span><span class="p">)])</span>
|
|
<span class="gp">>>> </span><span class="n">a</span><span class="o">.</span><span class="n">best</span>
|
|
<span class="go">'ISO-8859-1'</span>
|
|
<span class="gp">>>> </span><span class="s">'iso-8859-1'</span> <span class="ow">in</span> <span class="n">a</span>
|
|
<span class="go">True</span>
|
|
<span class="gp">>>> </span><span class="s">'UTF8'</span> <span class="ow">in</span> <span class="n">a</span>
|
|
<span class="go">True</span>
|
|
<span class="gp">>>> </span><span class="s">'utf7'</span> <span class="ow">in</span> <span class="n">a</span>
|
|
<span class="go">False</span>
|
|
</pre></div>
|
|
</div>
|
|
<p>To get the quality for an item you can use normal item lookup:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="gp">>>> </span><span class="k">print</span> <span class="n">a</span><span class="p">[</span><span class="s">'utf-8'</span><span class="p">]</span>
|
|
<span class="go">0.7</span>
|
|
<span class="gp">>>> </span><span class="n">a</span><span class="p">[</span><span class="s">'utf7'</span><span class="p">]</span>
|
|
<span class="go">0</span>
|
|
</pre></div>
|
|
</div>
|
|
<p class="versionchanged">
|
|
<span class="versionmodified">Changed in version 0.5: </span><a title="werkzeug.Accept" class="reference internal" href="#werkzeug.Accept"><tt class="xref py py-class docutils literal"><span class="pre">Accept</span></tt></a> objects are forced immutable now.</p>
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Accept.best">
|
|
<tt class="descname">best</tt><a class="headerlink" href="#werkzeug.Accept.best" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The best match as value.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Accept.best_match">
|
|
<tt class="descname">best_match</tt><big>(</big><em>matches</em>, <em>default=None</em><big>)</big><a class="headerlink" href="#werkzeug.Accept.best_match" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Returns the best match from a list of possible matches based
|
|
on the quality of the client. If two items have the same quality,
|
|
the one is returned that comes first.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>matches</strong> – a list of matches to check for</li>
|
|
<li><strong>default</strong> – the value that is returned if none match</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Accept.find">
|
|
<tt class="descname">find</tt><big>(</big><em>key</em><big>)</big><a class="headerlink" href="#werkzeug.Accept.find" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Get the position of an entry or return -1.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Accept.index">
|
|
<tt class="descname">index</tt><big>(</big><em>key</em><big>)</big><a class="headerlink" href="#werkzeug.Accept.index" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Get the position of an entry or raise <tt class="xref py py-exc docutils literal"><span class="pre">ValueError</span></tt>.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>key</strong> – The key to be looked up.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p class="versionchanged">
|
|
<span class="versionmodified">Changed in version 0.5: </span>This used to raise <tt class="xref py py-exc docutils literal"><span class="pre">IndexError</span></tt>, which was inconsistent
|
|
with the list API.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Accept.itervalues">
|
|
<tt class="descname">itervalues</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.Accept.itervalues" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Iterate over all values.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Accept.quality">
|
|
<tt class="descname">quality</tt><big>(</big><em>key</em><big>)</big><a class="headerlink" href="#werkzeug.Accept.quality" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Returns the quality of the key.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.6: </span>In previous versions you had to use the item-lookup syntax
|
|
(eg: <tt class="docutils literal"><span class="pre">obj[key]</span></tt> instead of <tt class="docutils literal"><span class="pre">obj.quality(key)</span></tt>)</p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Accept.to_header">
|
|
<tt class="descname">to_header</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.Accept.to_header" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Convert the header set into an HTTP header string.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.Accept.values">
|
|
<tt class="descname">values</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.Accept.values" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Return a list of the values, not the qualities.</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.MIMEAccept">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">MIMEAccept</tt><big>(</big><em>values=()</em><big>)</big><a class="headerlink" href="#werkzeug.MIMEAccept" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Like <a title="werkzeug.Accept" class="reference internal" href="#werkzeug.Accept"><tt class="xref py py-class docutils literal"><span class="pre">Accept</span></tt></a> but with special methods and behavior for
|
|
mimetypes.</p>
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.MIMEAccept.accept_html">
|
|
<tt class="descname">accept_html</tt><a class="headerlink" href="#werkzeug.MIMEAccept.accept_html" title="Permalink to this definition">¶</a></dt>
|
|
<dd>True if this object accepts HTML.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.MIMEAccept.accept_xhtml">
|
|
<tt class="descname">accept_xhtml</tt><a class="headerlink" href="#werkzeug.MIMEAccept.accept_xhtml" title="Permalink to this definition">¶</a></dt>
|
|
<dd>True if this object accepts XHTML.</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.CharsetAccept">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">CharsetAccept</tt><big>(</big><em>values=()</em><big>)</big><a class="headerlink" href="#werkzeug.CharsetAccept" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Like <a title="werkzeug.Accept" class="reference internal" href="#werkzeug.Accept"><tt class="xref py py-class docutils literal"><span class="pre">Accept</span></tt></a> but with normalization for charsets.</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.LanguageAccept">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">LanguageAccept</tt><big>(</big><em>values=()</em><big>)</big><a class="headerlink" href="#werkzeug.LanguageAccept" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Like <a title="werkzeug.Accept" class="reference internal" href="#werkzeug.Accept"><tt class="xref py py-class docutils literal"><span class="pre">Accept</span></tt></a> but with normalization for languages.</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.RequestCacheControl">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">RequestCacheControl</tt><big>(</big><em>values=()</em>, <em>on_update=None</em><big>)</big><a class="headerlink" href="#werkzeug.RequestCacheControl" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>A cache control for requests. This is immutable and gives access
|
|
to all the request-relevant cache control headers.</p>
|
|
<p>To get a header of the <a title="werkzeug.RequestCacheControl" class="reference internal" href="#werkzeug.RequestCacheControl"><tt class="xref py py-class docutils literal"><span class="pre">RequestCacheControl</span></tt></a> object again you can
|
|
convert the object into a string or call the <tt class="xref py py-meth docutils literal"><span class="pre">to_header()</span></tt> method. If
|
|
you plan to subclass it and add your own items have a look at the sourcecode
|
|
for that class.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5: </span>In previous versions a <cite>CacheControl</cite> class existed that was used
|
|
both for request and response.</p>
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.RequestCacheControl.no_cache">
|
|
<tt class="descname">no_cache</tt><a class="headerlink" href="#werkzeug.RequestCacheControl.no_cache" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘no-cache’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.RequestCacheControl.no_store">
|
|
<tt class="descname">no_store</tt><a class="headerlink" href="#werkzeug.RequestCacheControl.no_store" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘no-store’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.RequestCacheControl.max_age">
|
|
<tt class="descname">max_age</tt><a class="headerlink" href="#werkzeug.RequestCacheControl.max_age" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘max-age’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.RequestCacheControl.no_transform">
|
|
<tt class="descname">no_transform</tt><a class="headerlink" href="#werkzeug.RequestCacheControl.no_transform" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘no-transform’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.RequestCacheControl.max_stale">
|
|
<tt class="descname">max_stale</tt><a class="headerlink" href="#werkzeug.RequestCacheControl.max_stale" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘max-stale’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.RequestCacheControl.min_fresh">
|
|
<tt class="descname">min_fresh</tt><a class="headerlink" href="#werkzeug.RequestCacheControl.min_fresh" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘min-fresh’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt>
|
|
<tt class="descname">no_transform</tt></dt>
|
|
<dd>accessor for ‘no-transform’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.RequestCacheControl.only_if_cached">
|
|
<tt class="descname">only_if_cached</tt><a class="headerlink" href="#werkzeug.RequestCacheControl.only_if_cached" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘only-if-cached’</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.ResponseCacheControl">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">ResponseCacheControl</tt><big>(</big><em>values=()</em>, <em>on_update=None</em><big>)</big><a class="headerlink" href="#werkzeug.ResponseCacheControl" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>A cache control for responses. Unlike <a title="werkzeug.RequestCacheControl" class="reference internal" href="#werkzeug.RequestCacheControl"><tt class="xref py py-class docutils literal"><span class="pre">RequestCacheControl</span></tt></a>
|
|
this is mutable and gives access to response-relevant cache control
|
|
headers.</p>
|
|
<p>To get a header of the <a title="werkzeug.ResponseCacheControl" class="reference internal" href="#werkzeug.ResponseCacheControl"><tt class="xref py py-class docutils literal"><span class="pre">ResponseCacheControl</span></tt></a> object again you can
|
|
convert the object into a string or call the <tt class="xref py py-meth docutils literal"><span class="pre">to_header()</span></tt> method. If
|
|
you plan to subclass it and add your own items have a look at the sourcecode
|
|
for that class.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.5: </span>In previous versions a <cite>CacheControl</cite> class existed that was used
|
|
both for request and response.</p>
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.no_cache">
|
|
<tt class="descname">no_cache</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.no_cache" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘no-cache’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.no_store">
|
|
<tt class="descname">no_store</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.no_store" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘no-store’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.max_age">
|
|
<tt class="descname">max_age</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.max_age" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘max-age’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.no_transform">
|
|
<tt class="descname">no_transform</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.no_transform" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘no-transform’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.must_revalidate">
|
|
<tt class="descname">must_revalidate</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.must_revalidate" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘must-revalidate’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.private">
|
|
<tt class="descname">private</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.private" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘private’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.proxy_revalidate">
|
|
<tt class="descname">proxy_revalidate</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.proxy_revalidate" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘proxy-revalidate’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.public">
|
|
<tt class="descname">public</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.public" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘public’</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.ResponseCacheControl.s_maxage">
|
|
<tt class="descname">s_maxage</tt><a class="headerlink" href="#werkzeug.ResponseCacheControl.s_maxage" title="Permalink to this definition">¶</a></dt>
|
|
<dd>accessor for ‘s-maxage’</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.ETags">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">ETags</tt><big>(</big><em>strong_etags=None</em>, <em>weak_etags=None</em>, <em>star_tag=False</em><big>)</big><a class="headerlink" href="#werkzeug.ETags" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>A set that can be used to check if one etag is present in a collection
|
|
of etags.</p>
|
|
<dl class="method">
|
|
<dt id="werkzeug.ETags.as_set">
|
|
<tt class="descname">as_set</tt><big>(</big><em>include_weak=False</em><big>)</big><a class="headerlink" href="#werkzeug.ETags.as_set" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Convert the <cite>ETags</cite> object into a python set. Per default all the
|
|
weak etags are not part of this set.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.ETags.contains">
|
|
<tt class="descname">contains</tt><big>(</big><em>etag</em><big>)</big><a class="headerlink" href="#werkzeug.ETags.contains" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Check if an etag is part of the set ignoring weak tags.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.ETags.contains_raw">
|
|
<tt class="descname">contains_raw</tt><big>(</big><em>etag</em><big>)</big><a class="headerlink" href="#werkzeug.ETags.contains_raw" title="Permalink to this definition">¶</a></dt>
|
|
<dd>When passed a quoted tag it will check if this tag is part of the
|
|
set. If the tag is weak it is checked against weak and strong tags,
|
|
otherwise strong only.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.ETags.contains_weak">
|
|
<tt class="descname">contains_weak</tt><big>(</big><em>etag</em><big>)</big><a class="headerlink" href="#werkzeug.ETags.contains_weak" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Check if an etag is part of the set including weak and strong tags.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.ETags.is_weak">
|
|
<tt class="descname">is_weak</tt><big>(</big><em>etag</em><big>)</big><a class="headerlink" href="#werkzeug.ETags.is_weak" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Check if an etag is weak.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.ETags.to_header">
|
|
<tt class="descname">to_header</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.ETags.to_header" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Convert the etags set into a HTTP header string.</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.Authorization">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">Authorization</tt><big>(</big><em>auth_type</em>, <em>data=None</em><big>)</big><a class="headerlink" href="#werkzeug.Authorization" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Represents an <cite>Authorization</cite> header sent by the client. You should
|
|
not create this kind of object yourself but use it when it’s returned by
|
|
the <cite>parse_authorization_header</cite> function.</p>
|
|
<p>This object is a dict subclass and can be altered by setting dict items
|
|
but it should be considered immutable as it’s returned by the client and
|
|
not meant for modifications.</p>
|
|
<p class="versionchanged">
|
|
<span class="versionmodified">Changed in version 0.5: </span>This object became immutable.</p>
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.cnonce">
|
|
<tt class="descname">cnonce</tt><a class="headerlink" href="#werkzeug.Authorization.cnonce" title="Permalink to this definition">¶</a></dt>
|
|
<dd>If the server sent a qop-header in the <tt class="docutils literal"><span class="pre">WWW-Authenticate</span></tt>
|
|
header, the client has to provide this value for HTTP digest auth.
|
|
See the RFC for more details.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.nc">
|
|
<tt class="descname">nc</tt><a class="headerlink" href="#werkzeug.Authorization.nc" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The nonce count value transmitted by clients if a qop-header is
|
|
also transmitted. HTTP digest auth only.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.nonce">
|
|
<tt class="descname">nonce</tt><a class="headerlink" href="#werkzeug.Authorization.nonce" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The nonce the server sent for digest auth, sent back by the client.
|
|
A nonce should be unique for every 401 response for HTTP digest
|
|
auth.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.opaque">
|
|
<tt class="descname">opaque</tt><a class="headerlink" href="#werkzeug.Authorization.opaque" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The opaque header from the server returned unchanged by the client.
|
|
It is recommended that this string be base64 or hexadecimal data.
|
|
Digest auth only.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.password">
|
|
<tt class="descname">password</tt><a class="headerlink" href="#werkzeug.Authorization.password" title="Permalink to this definition">¶</a></dt>
|
|
<dd>When the authentication type is basic this is the password
|
|
transmitted by the client, else <cite>None</cite>.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.qop">
|
|
<tt class="descname">qop</tt><a class="headerlink" href="#werkzeug.Authorization.qop" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Indicates what “quality of protection” the client has applied to
|
|
the message for HTTP digest auth.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.realm">
|
|
<tt class="descname">realm</tt><a class="headerlink" href="#werkzeug.Authorization.realm" title="Permalink to this definition">¶</a></dt>
|
|
<dd>This is the server realm sent back for HTTP digest auth.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.response">
|
|
<tt class="descname">response</tt><a class="headerlink" href="#werkzeug.Authorization.response" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A string of 32 hex digits computed as defined in RFC 2617, which
|
|
proves that the user knows a password. Digest auth only.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.uri">
|
|
<tt class="descname">uri</tt><a class="headerlink" href="#werkzeug.Authorization.uri" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The URI from Request-URI of the Request-Line; duplicated because
|
|
proxies are allowed to change the Request-Line in transit. HTTP
|
|
digest auth only.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.Authorization.username">
|
|
<tt class="descname">username</tt><a class="headerlink" href="#werkzeug.Authorization.username" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The username transmitted. This is set for both basic and digest
|
|
auth all the time.</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
<dl class="class">
|
|
<dt id="werkzeug.WWWAuthenticate">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">WWWAuthenticate</tt><big>(</big><em>auth_type=None</em>, <em>values=None</em>, <em>on_update=None</em><big>)</big><a class="headerlink" href="#werkzeug.WWWAuthenticate" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Provides simple access to <cite>WWW-Authenticate</cite> headers.</p>
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.algorithm">
|
|
<tt class="descname">algorithm</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.algorithm" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A string indicating a pair of algorithms used to produce the digest
|
|
and a checksum. If this is not present it is assumed to be “MD5”.
|
|
If the algorithm is not understood, the challenge should be ignored
|
|
(and a different one used, if there is more than one).</dd></dl>
|
|
|
|
<dl class="staticmethod">
|
|
<dt id="werkzeug.WWWAuthenticate.auth_property">
|
|
<em class="property">static </em><tt class="descname">auth_property</tt><big>(</big><em>name</em>, <em>doc=None</em><big>)</big><a class="headerlink" href="#werkzeug.WWWAuthenticate.auth_property" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>A static helper function for subclasses to add extra authentication
|
|
system properties onto a class:</p>
|
|
<div class="highlight-python"><div class="highlight"><pre><span class="k">class</span> <span class="nc">FooAuthenticate</span><span class="p">(</span><span class="n">WWWAuthenticate</span><span class="p">):</span>
|
|
<span class="n">special_realm</span> <span class="o">=</span> <span class="n">auth_property</span><span class="p">(</span><span class="s">'special_realm'</span><span class="p">)</span>
|
|
</pre></div>
|
|
</div>
|
|
<p>For more information have a look at the sourcecode to see how the
|
|
regular properties (<a title="werkzeug.WWWAuthenticate.realm" class="reference internal" href="#werkzeug.WWWAuthenticate.realm"><tt class="xref py py-attr docutils literal"><span class="pre">realm</span></tt></a> etc.) are implemented.</p>
|
|
</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.domain">
|
|
<tt class="descname">domain</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.domain" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A list of URIs that define the protection space. If a URI is an
|
|
absolute path, it is relative to the canonical root URL of the
|
|
server being accessed.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.nonce">
|
|
<tt class="descname">nonce</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.nonce" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A server-specified data string which should be uniquely generated
|
|
each time a 401 response is made. It is recommended that this
|
|
string be base64 or hexadecimal data.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.opaque">
|
|
<tt class="descname">opaque</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.opaque" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A string of data, specified by the server, which should be returned
|
|
by the client unchanged in the Authorization header of subsequent
|
|
requests with URIs in the same protection space. It is recommended
|
|
that this string be base64 or hexadecimal data.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.qop">
|
|
<tt class="descname">qop</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.qop" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A set of quality-of-privacy directives such as auth and auth-int.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.realm">
|
|
<tt class="descname">realm</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.realm" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A string to be displayed to users so they know which username and
|
|
password to use. This string should contain at least the name of
|
|
the host performing the authentication and might additionally
|
|
indicate the collection of users who might have access.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.WWWAuthenticate.set_basic">
|
|
<tt class="descname">set_basic</tt><big>(</big><em>realm='authentication required'</em><big>)</big><a class="headerlink" href="#werkzeug.WWWAuthenticate.set_basic" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Clear the auth info and enable basic auth.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.WWWAuthenticate.set_digest">
|
|
<tt class="descname">set_digest</tt><big>(</big><em>realm</em>, <em>nonce</em>, <em>qop=('auth'</em>, <em>)</em>, <em>opaque=None</em>, <em>algorithm=None</em>, <em>stale=False</em><big>)</big><a class="headerlink" href="#werkzeug.WWWAuthenticate.set_digest" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Clear the auth info and enable digest auth.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.stale">
|
|
<tt class="descname">stale</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.stale" title="Permalink to this definition">¶</a></dt>
|
|
<dd>A flag, indicating that the previous request from the client was
|
|
rejected because the nonce value was stale.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.WWWAuthenticate.to_header">
|
|
<tt class="descname">to_header</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.WWWAuthenticate.to_header" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Convert the stored values into a WWW-Authenticate header.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.WWWAuthenticate.type">
|
|
<tt class="descname">type</tt><a class="headerlink" href="#werkzeug.WWWAuthenticate.type" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The type of the auth mechanism. HTTP currently specifies
|
|
<cite>Basic</cite> and <cite>Digest</cite>.</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
</div>
|
|
<div class="section" id="others">
|
|
<h2>Others<a class="headerlink" href="#others" title="Permalink to this headline">¶</a></h2>
|
|
<dl class="class">
|
|
<dt id="werkzeug.FileStorage">
|
|
<em class="property">class </em><tt class="descclassname">werkzeug.</tt><tt class="descname">FileStorage</tt><big>(</big><em>stream=None</em>, <em>filename=None</em>, <em>name=None</em>, <em>content_type='application/octet-stream'</em>, <em>content_length=-1</em>, <em>headers=None</em><big>)</big><a class="headerlink" href="#werkzeug.FileStorage" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>The <a title="werkzeug.FileStorage" class="reference internal" href="#werkzeug.FileStorage"><tt class="xref py py-class docutils literal"><span class="pre">FileStorage</span></tt></a> class is a thin wrapper over incoming files.
|
|
It is used by the request object to represent uploaded files. All the
|
|
attributes of the wrapper stream are proxied by the file storage so
|
|
it’s possible to do <tt class="docutils literal"><span class="pre">storage.read()</span></tt> instead of the long form
|
|
<tt class="docutils literal"><span class="pre">storage.stream.read()</span></tt>.</p>
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.FileStorage.stream">
|
|
<tt class="descname">stream</tt><a class="headerlink" href="#werkzeug.FileStorage.stream" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The input stream for the uploaded file. This usually points to an
|
|
open temporary file.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.FileStorage.filename">
|
|
<tt class="descname">filename</tt><a class="headerlink" href="#werkzeug.FileStorage.filename" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The filename of the file on the client.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.FileStorage.name">
|
|
<tt class="descname">name</tt><a class="headerlink" href="#werkzeug.FileStorage.name" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The name of the form field.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.FileStorage.content_type">
|
|
<tt class="descname">content_type</tt><a class="headerlink" href="#werkzeug.FileStorage.content_type" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The content type (mimetype) of the file.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.FileStorage.content_length">
|
|
<tt class="descname">content_length</tt><a class="headerlink" href="#werkzeug.FileStorage.content_length" title="Permalink to this definition">¶</a></dt>
|
|
<dd>The length of the file in bytes.</dd></dl>
|
|
|
|
<dl class="attribute">
|
|
<dt id="werkzeug.FileStorage.headers">
|
|
<tt class="descname">headers</tt><a class="headerlink" href="#werkzeug.FileStorage.headers" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>The multipart headers as <a title="werkzeug.Headers" class="reference internal" href="#werkzeug.Headers"><tt class="xref py py-class docutils literal"><span class="pre">Headers</span></tt></a> object. This usually contains
|
|
irrelevant information but in combination with custom multipart requests
|
|
the raw headers might be interesting.</p>
|
|
<p class="versionadded">
|
|
<span class="versionmodified">New in version 0.6.</span></p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.FileStorage.close">
|
|
<tt class="descname">close</tt><big>(</big><big>)</big><a class="headerlink" href="#werkzeug.FileStorage.close" title="Permalink to this definition">¶</a></dt>
|
|
<dd>Close the underlying file if possible.</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="werkzeug.FileStorage.save">
|
|
<tt class="descname">save</tt><big>(</big><em>dst</em>, <em>buffer_size=16384</em><big>)</big><a class="headerlink" href="#werkzeug.FileStorage.save" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Save the file to a destination path or file object. If the
|
|
destination is a file object you have to close it yourself after the
|
|
call. The buffer size is the number of bytes held in memory during
|
|
the copy process. It defaults to 16KB.</p>
|
|
<p>For secure file saving also have a look at <a title="werkzeug.secure_filename" class="reference external" href="utils.html#werkzeug.secure_filename"><tt class="xref py py-func docutils literal"><span class="pre">secure_filename()</span></tt></a>.</p>
|
|
<table class="docutils field-list" frame="void" rules="none">
|
|
<col class="field-name" />
|
|
<col class="field-body" />
|
|
<tbody valign="top">
|
|
<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
|
|
<li><strong>dst</strong> – a filename or open file object the uploaded file
|
|
is saved to.</li>
|
|
<li><strong>buffer_size</strong> – the size of the buffer. This works the same as
|
|
the <cite>length</cite> parameter of
|
|
<a title="(in Python v2.7)" class="reference external" href="http://docs.python.org/dev/library/shutil.html#shutil.copyfileobj"><tt class="xref py py-func docutils literal"><span class="pre">shutil.copyfileobj()</span></tt></a>.</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div style="clear: both"></div>
|
|
</div>
|
|
<div class="footer">
|
|
© Copyright 2008 by the <a href="http://pocoo.org/">Pocoo Team</a>,
|
|
documentation generated by <a href="http://sphinx.pocoo.org/">Sphinx</a>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html> |