/usr/share/doc/python-django-feincms-doc/html/extensions.html is in python-django-feincms-doc 1.7.4-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Extensions — FeinCMS 1.7.4 documentation</title>
<link rel="stylesheet" href="_static/nature.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: './',
VERSION: '1.7.4',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="top" title="FeinCMS 1.7.4 documentation" href="index.html" />
<link rel="next" title="Administration interfaces" href="admin.html" />
<link rel="prev" title="Content types - what your page content is built of" href="contenttypes.html" />
</head>
<body>
<div class="related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="admin.html" title="Administration interfaces"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="contenttypes.html" title="Content types - what your page content is built of"
accesskey="P">previous</a> |</li>
<li><a href="index.html">FeinCMS 1.7.4 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body">
<div class="section" id="extensions">
<span id="id1"></span><h1>Extensions<a class="headerlink" href="#extensions" title="Permalink to this headline">¶</a></h1>
<p>The extensions mechanism has been refactored to remove the need to make models
know about their related model admin classes. The new module
<tt class="xref py py-mod docutils literal"><span class="pre">feincms.extensions</span></tt> contains mixins and base classes - their purpose
is as follows:</p>
<dl class="class">
<dt id="feincms.extensions.ExtensionsMixin">
<em class="property">class </em><tt class="descclassname">feincms.extensions.</tt><tt class="descname">ExtensionsMixin</tt><a class="headerlink" href="#feincms.extensions.ExtensionsMixin" title="Permalink to this definition">¶</a></dt>
<dd><p>This mixin provides the <tt class="docutils literal"><span class="pre">register_extensions</span></tt> method which is the place
where extensions are registered for a certain model. Extensions can be
specified in the following ways:</p>
<ul class="simple">
<li>Subclasses of <a class="reference internal" href="#feincms.extensions.Extension" title="feincms.extensions.Extension"><tt class="xref py py-class docutils literal"><span class="pre">Extension</span></tt></a></li>
<li>Dotted Python module paths pointing to a subclass of the aforementioned
extension class</li>
<li>Dotted Python module paths pointing to a module containing either a class
named <tt class="docutils literal"><span class="pre">Extension</span></tt> or a function named <tt class="docutils literal"><span class="pre">register</span></tt> (for legacy
extensions)</li>
</ul>
</dd></dl>
<dl class="class">
<dt id="feincms.extensions.Extension">
<em class="property">class </em><tt class="descclassname">feincms.extensions.</tt><tt class="descname">Extension</tt><a class="headerlink" href="#feincms.extensions.Extension" title="Permalink to this definition">¶</a></dt>
<dd><p>This is the base class for your own extension. It has the following methods
and properties:</p>
<dl class="attribute">
<dt id="feincms.extensions.Extension.model">
<tt class="descname">model</tt><a class="headerlink" href="#feincms.extensions.Extension.model" title="Permalink to this definition">¶</a></dt>
<dd><p>The model class.</p>
</dd></dl>
<dl class="method">
<dt id="feincms.extensions.Extension.handle_model">
<tt class="descname">handle_model</tt><big>(</big><em>self</em><big>)</big><a class="headerlink" href="#feincms.extensions.Extension.handle_model" title="Permalink to this definition">¶</a></dt>
<dd><p>The method which modifies the Django model class. The model class is
available as <tt class="docutils literal"><span class="pre">self.model</span></tt>.</p>
</dd></dl>
<dl class="method">
<dt id="feincms.extensions.Extension.handle_modeladmin">
<tt class="descname">handle_modeladmin</tt><big>(</big><em>self</em>, <em>modeladmin</em><big>)</big><a class="headerlink" href="#feincms.extensions.Extension.handle_modeladmin" title="Permalink to this definition">¶</a></dt>
<dd><p>This method receives the model admin instance bound to the model. This
method could be called more than once, especially when using more than
one admin site.</p>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="feincms.extensions.ExtensionModelAdmin">
<em class="property">class </em><tt class="descclassname">feincms.extensions.</tt><tt class="descname">ExtensionModelAdmin</tt><a class="headerlink" href="#feincms.extensions.ExtensionModelAdmin" title="Permalink to this definition">¶</a></dt>
<dd><p>This is a model admin subclass which knows about extensions, and lets the
extensions do their work modifying the model admin instance after it has
been successfully initialized. It has the following methods and properties:</p>
<dl class="method">
<dt id="feincms.extensions.ExtensionModelAdmin.initialize_extensions">
<tt class="descname">initialize_extensions</tt><big>(</big><em>self</em><big>)</big><a class="headerlink" href="#feincms.extensions.ExtensionModelAdmin.initialize_extensions" title="Permalink to this definition">¶</a></dt>
<dd><p>This method is automatically called at the end of initialization and
loops through all registered extensions and calls their
<tt class="docutils literal"><span class="pre">handle_modeladmin</span></tt> method.</p>
</dd></dl>
<dl class="method">
<dt id="feincms.extensions.ExtensionModelAdmin.add_extension_options">
<tt class="descname">add_extension_options</tt><big>(</big><em>self</em>, <em>*f</em><big>)</big><a class="headerlink" href="#feincms.extensions.ExtensionModelAdmin.add_extension_options" title="Permalink to this definition">¶</a></dt>
<dd><p>This is a helper to add fields and fieldsets to a model admin instance.
Usage is as follows:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">modeladmin</span><span class="o">.</span><span class="n">add_extension_options</span><span class="p">(</span><span class="s">'field1'</span><span class="p">,</span> <span class="s">'field2'</span><span class="p">)</span>
</pre></div>
</div>
<p>Or:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">modeladmin</span><span class="o">.</span><span class="n">add_extension_options</span><span class="p">(</span><span class="n">_</span><span class="p">(</span><span class="s">'Fieldset title'</span><span class="p">),</span> <span class="p">{</span>
<span class="s">'fields'</span><span class="p">:</span> <span class="p">(</span><span class="s">'field1'</span><span class="p">,</span> <span class="s">'field2'</span><span class="p">),</span>
<span class="p">})</span>
</pre></div>
</div>
</dd></dl>
</dd></dl>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar">
<div class="sphinxsidebarwrapper">
<h4>Previous topic</h4>
<p class="topless"><a href="contenttypes.html"
title="previous chapter">Content types - what your page content is built of</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="admin.html"
title="next chapter">Administration interfaces</a></p>
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="_sources/extensions.txt"
rel="nofollow">Show Source</a></li>
</ul>
<div id="searchbox" style="display: none">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<input type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
<p class="searchtip" style="font-size: 90%">
Enter search terms or a module, class or function name.
</p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="admin.html" title="Administration interfaces"
>next</a> |</li>
<li class="right" >
<a href="contenttypes.html" title="Content types - what your page content is built of"
>previous</a> |</li>
<li><a href="index.html">FeinCMS 1.7.4 documentation</a> »</li>
</ul>
</div>
<div class="footer">
© Copyright 2009-2010, Feinheit GmbH and contributors.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
|