evennia/docs/1.0-dev/api/evennia.help.html
2020-06-14 21:48:02 +02:00

862 lines
No EOL
46 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>evennia.help package &mdash; Evennia 1.0-dev documentation</title>
<link rel="shortcut icon" href="../_static/favicon.ico"/>
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="index" title="Index"
href="../genindex.html"/>
<link rel="search" title="Search" href="../search.html"/>
<link rel="top" title="Evennia 1.0-dev documentation" href="../index.html"/>
<script src="../_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="../index.html" class="icon icon-home"> Evennia
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<!-- Local TOC -->
<div class="local-toc"><ul>
<li><a class="reference internal" href="#">evennia.help package</a><ul>
<li><a class="reference internal" href="#subpackages">Subpackages</a></li>
<li><a class="reference internal" href="#submodules">Submodules</a></li>
<li><a class="reference internal" href="#module-evennia.help.admin">evennia.help.admin module</a></li>
<li><a class="reference internal" href="#module-evennia.help.manager">evennia.help.manager module</a></li>
<li><a class="reference internal" href="#module-evennia.help.models">evennia.help.models module</a></li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">Evennia</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html">Docs</a> &raquo;</li>
<li>evennia.help package</li>
<li class="wy-breadcrumbs-aside">
<a href="../_sources/api/evennia.help.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="module-evennia.help">
<span id="evennia-help-package"></span><h1>evennia.help package<a class="headerlink" href="#module-evennia.help" title="Permalink to this headline"></a></h1>
<p>This sub-package defines the help system of Evennia. It is pretty
simple, mainly consisting of a database model to hold help entries.
The auto-cmd-help is rather handled by the default help command
itself.</p>
<div class="section" id="subpackages">
<h2>Subpackages<a class="headerlink" href="#subpackages" title="Permalink to this headline"></a></h2>
<div class="toctree-wrapper compound">
</div>
</div>
<div class="section" id="submodules">
<h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this headline"></a></h2>
</div>
<div class="section" id="module-evennia.help.admin">
<span id="evennia-help-admin-module"></span><h2>evennia.help.admin module<a class="headerlink" href="#module-evennia.help.admin" title="Permalink to this headline"></a></h2>
<p>This defines how to edit help entries in Admin.</p>
<dl class="class">
<dt id="evennia.help.admin.HelpEntryAdmin">
<em class="property">class </em><code class="sig-prename descclassname">evennia.help.admin.</code><code class="sig-name descname">HelpEntryAdmin</code><span class="sig-paren">(</span><em class="sig-param">model</em>, <em class="sig-param">admin_site</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/admin.html#HelpEntryAdmin"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.contrib.admin.options.ModelAdmin</span></code></p>
<p>Sets up the admin manaager for help entries</p>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.fieldsets">
<code class="sig-name descname">fieldsets</code><em class="property"> = ((None, {'fields': (('db_key', 'db_help_category'), 'db_entrytext', 'db_lock_storage'), 'description': 'Sets a Help entry. Set lock to &lt;i&gt;view:all()&lt;/I&gt; unless you want to restrict it.'}),)</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.fieldsets" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.form">
<code class="sig-name descname">form</code><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.form" title="Permalink to this definition"></a></dt>
<dd><p>alias of <a class="reference internal" href="#evennia.help.admin.HelpEntryForm" title="evennia.help.admin.HelpEntryForm"><code class="xref py py-class docutils literal notranslate"><span class="pre">HelpEntryForm</span></code></a></p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.inlines">
<code class="sig-name descname">inlines</code><em class="property"> = [&lt;class 'evennia.help.admin.HelpTagInline'&gt;]</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.inlines" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.list_display">
<code class="sig-name descname">list_display</code><em class="property"> = ('id', 'db_key', 'db_help_category', 'db_lock_storage')</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.list_display" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.list_display_links">
<code class="sig-name descname">list_display_links</code><em class="property"> = ('id', 'db_key')</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.list_display_links" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.list_select_related">
<code class="sig-name descname">list_select_related</code><em class="property"> = True</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.list_select_related" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="evennia.help.admin.HelpEntryAdmin.media">
<em class="property">property </em><code class="sig-name descname">media</code><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.media" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.ordering">
<code class="sig-name descname">ordering</code><em class="property"> = ['db_help_category', 'db_key']</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.ordering" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.save_as">
<code class="sig-name descname">save_as</code><em class="property"> = True</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.save_as" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.save_on_top">
<code class="sig-name descname">save_on_top</code><em class="property"> = True</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.save_on_top" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryAdmin.search_fields">
<code class="sig-name descname">search_fields</code><em class="property"> = ['^db_key', 'db_entrytext']</em><a class="headerlink" href="#evennia.help.admin.HelpEntryAdmin.search_fields" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="class">
<dt id="evennia.help.admin.HelpEntryForm">
<em class="property">class </em><code class="sig-prename descclassname">evennia.help.admin.</code><code class="sig-name descname">HelpEntryForm</code><span class="sig-paren">(</span><em class="sig-param">data=None</em>, <em class="sig-param">files=None</em>, <em class="sig-param">auto_id='id_%s'</em>, <em class="sig-param">prefix=None</em>, <em class="sig-param">initial=None</em>, <em class="sig-param">error_class=&lt;class 'django.forms.utils.ErrorList'&gt;</em>, <em class="sig-param">label_suffix=None</em>, <em class="sig-param">empty_permitted=False</em>, <em class="sig-param">instance=None</em>, <em class="sig-param">use_required_attribute=None</em>, <em class="sig-param">renderer=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/admin.html#HelpEntryForm"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.admin.HelpEntryForm" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.forms.models.ModelForm</span></code></p>
<p>Defines how to display the help entry</p>
<dl class="class">
<dt id="evennia.help.admin.HelpEntryForm.Meta">
<em class="property">class </em><code class="sig-name descname">Meta</code><a class="reference internal" href="../_modules/evennia/help/admin.html#HelpEntryForm.Meta"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.admin.HelpEntryForm.Meta" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryForm.Meta.fields">
<code class="sig-name descname">fields</code><em class="property"> = '__all__'</em><a class="headerlink" href="#evennia.help.admin.HelpEntryForm.Meta.fields" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryForm.Meta.model">
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.help.admin.HelpEntryForm.Meta.model" title="Permalink to this definition"></a></dt>
<dd><p>alias of <a class="reference internal" href="#evennia.help.models.HelpEntry" title="evennia.help.models.HelpEntry"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.help.models.HelpEntry</span></code></a></p>
</dd></dl>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryForm._meta">
<code class="sig-name descname">_meta</code><em class="property"> = &lt;django.forms.models.ModelFormOptions object&gt;</em><a class="headerlink" href="#evennia.help.admin.HelpEntryForm._meta" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryForm.base_fields">
<code class="sig-name descname">base_fields</code><em class="property"> = {'db_entrytext': &lt;django.forms.fields.CharField object&gt;, 'db_help_category': &lt;django.forms.fields.CharField object&gt;, 'db_key': &lt;django.forms.fields.CharField object&gt;, 'db_lock_storage': &lt;django.forms.fields.CharField object&gt;, 'db_staff_only': &lt;django.forms.fields.BooleanField object&gt;, 'db_tags': &lt;django.forms.models.ModelMultipleChoiceField object&gt;}</em><a class="headerlink" href="#evennia.help.admin.HelpEntryForm.base_fields" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpEntryForm.declared_fields">
<code class="sig-name descname">declared_fields</code><em class="property"> = {'db_help_category': &lt;django.forms.fields.CharField object&gt;, 'db_lock_storage': &lt;django.forms.fields.CharField object&gt;}</em><a class="headerlink" href="#evennia.help.admin.HelpEntryForm.declared_fields" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="evennia.help.admin.HelpEntryForm.media">
<em class="property">property </em><code class="sig-name descname">media</code><a class="headerlink" href="#evennia.help.admin.HelpEntryForm.media" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="class">
<dt id="evennia.help.admin.HelpTagInline">
<em class="property">class </em><code class="sig-prename descclassname">evennia.help.admin.</code><code class="sig-name descname">HelpTagInline</code><span class="sig-paren">(</span><em class="sig-param">parent_model</em>, <em class="sig-param">admin_site</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/admin.html#HelpTagInline"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.admin.HelpTagInline" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.html#evennia.typeclasses.admin.TagInline" title="evennia.typeclasses.admin.TagInline"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.typeclasses.admin.TagInline</span></code></a></p>
<dl class="method">
<dt id="evennia.help.admin.HelpTagInline.media">
<em class="property">property </em><code class="sig-name descname">media</code><a class="headerlink" href="#evennia.help.admin.HelpTagInline.media" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpTagInline.model">
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.help.admin.HelpTagInline.model" title="Permalink to this definition"></a></dt>
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.help.models.HelpEntry_db_tags</span></code></p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.admin.HelpTagInline.related_field">
<code class="sig-name descname">related_field</code><em class="property"> = 'helpentry'</em><a class="headerlink" href="#evennia.help.admin.HelpTagInline.related_field" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
</div>
<div class="section" id="module-evennia.help.manager">
<span id="evennia-help-manager-module"></span><h2>evennia.help.manager module<a class="headerlink" href="#module-evennia.help.manager" title="Permalink to this headline"></a></h2>
<p>Custom manager for HelpEntry objects.</p>
<dl class="class">
<dt id="evennia.help.manager.HelpEntryManager">
<em class="property">class </em><code class="sig-prename descclassname">evennia.help.manager.</code><code class="sig-name descname">HelpEntryManager</code><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.html#evennia.typeclasses.managers.TypedObjectManager" title="evennia.typeclasses.managers.TypedObjectManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.typeclasses.managers.TypedObjectManager</span></code></a></p>
<p>This HelpEntryManager implements methods for searching
and manipulating HelpEntries directly from the database.</p>
<p>These methods will all return database objects
(or QuerySets) directly.</p>
<p>Evennia-specific:
find_topicmatch
find_apropos
find_topicsuggestions
find_topics_with_category
all_to_category
search_help (equivalent to evennia.search_helpentry)</p>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.all_to_category">
<code class="sig-name descname">all_to_category</code><span class="sig-paren">(</span><em class="sig-param">default_category</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.all_to_category"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.all_to_category" title="Permalink to this definition"></a></dt>
<dd><p>Shifts all help entries in database to default_category. This
action cannot be reverted. It is used primarily by the engine
when importing a default help database, making sure this ends
up in one easily separated category.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>default_category</strong> (<em>str</em>) Category to move entries to.</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.find_apropos">
<code class="sig-name descname">find_apropos</code><span class="sig-paren">(</span><em class="sig-param">topicstr</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_apropos"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_apropos" title="Permalink to this definition"></a></dt>
<dd><p>Do a very loose search, returning all help entries containing
the search criterion in their titles.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>topicstr</strong> (<em>str</em>) Search criterion.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Query results.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>matches (HelpEntries)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.find_topicmatch">
<code class="sig-name descname">find_topicmatch</code><span class="sig-paren">(</span><em class="sig-param">topicstr</em>, <em class="sig-param">exact=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_topicmatch"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_topicmatch" title="Permalink to this definition"></a></dt>
<dd><p>Searches for matching topics or aliases based on players
input.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>topcistr</strong> (<em>str</em>) Help topic to search for.</p></li>
<li><p><strong>exact</strong> (<em>bool</em><em>, </em><em>optional</em>) Require exact match
(non-case-sensitive). If <cite>False</cite> (default), match
sub-parts of the string.</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Query results.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>matches (HelpEntries)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.find_topics_with_category">
<code class="sig-name descname">find_topics_with_category</code><span class="sig-paren">(</span><em class="sig-param">help_category</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_topics_with_category"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_topics_with_category" title="Permalink to this definition"></a></dt>
<dd><p>Search topics having a particular category.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>help_category</strong> (<em>str</em>) Category query criterion.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Query results.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>matches (HelpEntries)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.find_topicsuggestions">
<code class="sig-name descname">find_topicsuggestions</code><span class="sig-paren">(</span><em class="sig-param">topicstr</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.find_topicsuggestions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.find_topicsuggestions" title="Permalink to this definition"></a></dt>
<dd><p>Do a fuzzy match, preferably within the category of the
current topic.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><strong>topicstr</strong> (<em>str</em>) Search criterion.</p>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>Query results.</p>
</dd>
<dt class="field-odd">Return type</dt>
<dd class="field-odd"><p>matches (Helpentries)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.get_all_categories">
<code class="sig-name descname">get_all_categories</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.get_all_categories"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.get_all_categories" title="Permalink to this definition"></a></dt>
<dd><p>Return all defined category names with at least one topic in
them.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p><dl class="simple">
<dt>Unique list of category names across all</dt><dd><p>topics.</p>
</dd>
</dl>
</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>matches (list)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.get_all_topics">
<code class="sig-name descname">get_all_topics</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.get_all_topics"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.get_all_topics" title="Permalink to this definition"></a></dt>
<dd><p>Get all topics.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>All topics.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>all (HelpEntries)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.manager.HelpEntryManager.search_help">
<code class="sig-name descname">search_help</code><span class="sig-paren">(</span><em class="sig-param">ostring</em>, <em class="sig-param">help_category=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/manager.html#HelpEntryManager.search_help"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.manager.HelpEntryManager.search_help" title="Permalink to this definition"></a></dt>
<dd><p>Retrieve a search entry object.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ostring</strong> (<em>str</em>) The help topic to look for.</p></li>
<li><p><strong>category</strong> (<em>str</em>) Limit the search to a particular help topic</p></li>
</ul>
</dd>
</dl>
</dd></dl>
</dd></dl>
</div>
<div class="section" id="module-evennia.help.models">
<span id="evennia-help-models-module"></span><h2>evennia.help.models module<a class="headerlink" href="#module-evennia.help.models" title="Permalink to this headline"></a></h2>
<p>Models for the help system.</p>
<p>The database-tied help system is only half of Evennias help
functionality, the other one being the auto-generated command help
that is created on the fly from each commands <cite>__doc__</cite> string. The
persistent database system defined here is intended for all other
forms of help that do not concern commands, like information about the
game world, policy info, rules and similar.</p>
<dl class="class">
<dt id="evennia.help.models.HelpEntry">
<em class="property">class </em><code class="sig-prename descclassname">evennia.help.models.</code><code class="sig-name descname">HelpEntry</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.utils.idmapper.html#evennia.utils.idmapper.models.SharedMemoryModel" title="evennia.utils.idmapper.models.SharedMemoryModel"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.utils.idmapper.models.SharedMemoryModel</span></code></a></p>
<p>A generic help entry.</p>
<dl class="simple">
<dt>An HelpEntry object has the following properties defined:</dt><dd><p>key - main name of entry
help_category - which category entry belongs to (defaults to General)
entrytext - the actual help text
permissions - perm strings</p>
</dd>
<dt>Method:</dt><dd><p>access</p>
</dd>
</dl>
<dl class="exception">
<dt id="evennia.help.models.HelpEntry.DoesNotExist">
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.help.models.HelpEntry.DoesNotExist" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.core.exceptions.ObjectDoesNotExist</span></code></p>
</dd></dl>
<dl class="exception">
<dt id="evennia.help.models.HelpEntry.MultipleObjectsReturned">
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.help.models.HelpEntry.MultipleObjectsReturned" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.core.exceptions.MultipleObjectsReturned</span></code></p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry._is_deleted">
<code class="sig-name descname">_is_deleted</code><em class="property"> = False</em><a class="headerlink" href="#evennia.help.models.HelpEntry._is_deleted" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry._meta">
<code class="sig-name descname">_meta</code><em class="property"> = &lt;Options for HelpEntry&gt;</em><a class="headerlink" href="#evennia.help.models.HelpEntry._meta" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.access">
<code class="sig-name descname">access</code><span class="sig-paren">(</span><em class="sig-param">accessing_obj</em>, <em class="sig-param">access_type='read'</em>, <em class="sig-param">default=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.access"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.access" title="Permalink to this definition"></a></dt>
<dd><p>Determines if another object has permission to access.
accessing_obj - object trying to access this one
access_type - type of access sought
default - what to return if no lock of access_type was found</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.aliases">
<code class="sig-name descname">aliases</code><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.aliases"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.aliases" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.db_entrytext">
<code class="sig-name descname">db_entrytext</code><a class="headerlink" href="#evennia.help.models.HelpEntry.db_entrytext" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.db_help_category">
<code class="sig-name descname">db_help_category</code><a class="headerlink" href="#evennia.help.models.HelpEntry.db_help_category" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.db_key">
<code class="sig-name descname">db_key</code><a class="headerlink" href="#evennia.help.models.HelpEntry.db_key" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.db_lock_storage">
<code class="sig-name descname">db_lock_storage</code><a class="headerlink" href="#evennia.help.models.HelpEntry.db_lock_storage" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.db_staff_only">
<code class="sig-name descname">db_staff_only</code><a class="headerlink" href="#evennia.help.models.HelpEntry.db_staff_only" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.db_tags">
<code class="sig-name descname">db_tags</code><a class="headerlink" href="#evennia.help.models.HelpEntry.db_tags" title="Permalink to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">Pizza.toppings</span></code> and <code class="docutils literal notranslate"><span class="pre">Topping.pizzas</span></code> are <code class="docutils literal notranslate"><span class="pre">ManyToManyDescriptor</span></code>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <code class="docutils literal notranslate"><span class="pre">create_forward_many_to_many_manager()</span></code> defined below.</p>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.entrytext">
<em class="property">property </em><code class="sig-name descname">entrytext</code><a class="headerlink" href="#evennia.help.models.HelpEntry.entrytext" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for getting database field <cite>db_entrytext</cite>.</p>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.get_absolute_url">
<code class="sig-name descname">get_absolute_url</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.help.models.HelpEntry.get_absolute_url" title="Permalink to this definition"></a></dt>
<dd><p>Returns the URI path for a View that allows users to view details for
this object.</p>
<p>ex. Oscar (Character) = /characters/oscar/1/</p>
<p>For this to work, the developer must have defined a named view somewhere
in urls.py that follows the format modelname-action, so in this case
a named view of character-detail would be referenced by this method.</p>
<p>ex.
url(rcharacters/(?P&lt;slug&gt;[wd-]+)/(?P&lt;pk&gt;[0-9]+)/$,</p>
<blockquote>
<div><p>CharDetailView.as_view(), name=character-detail)</p>
</div></blockquote>
<p>If no View has been created and defined in urls.py, returns an
HTML anchor.</p>
<p>This method is naive and simply returns a path. Securing access to
the actual view and limiting who can view this object is the developers
responsibility.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>URI path to object detail page, if defined.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>path (str)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.help_category">
<em class="property">property </em><code class="sig-name descname">help_category</code><a class="headerlink" href="#evennia.help.models.HelpEntry.help_category" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for getting database field <cite>db_help_category</cite>.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.id">
<code class="sig-name descname">id</code><a class="headerlink" href="#evennia.help.models.HelpEntry.id" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.key">
<em class="property">property </em><code class="sig-name descname">key</code><a class="headerlink" href="#evennia.help.models.HelpEntry.key" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for getting database field <cite>db_key</cite>.</p>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.lock_storage">
<em class="property">property </em><code class="sig-name descname">lock_storage</code><a class="headerlink" href="#evennia.help.models.HelpEntry.lock_storage" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for getting database field <cite>db_lock_storage</cite>.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.locks">
<code class="sig-name descname">locks</code><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.locks"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.locks" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.objects">
<code class="sig-name descname">objects</code><em class="property"> = &lt;evennia.help.manager.HelpEntryManager object&gt;</em><a class="headerlink" href="#evennia.help.models.HelpEntry.objects" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.path">
<code class="sig-name descname">path</code><em class="property"> = 'evennia.help.models.HelpEntry'</em><a class="headerlink" href="#evennia.help.models.HelpEntry.path" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.search_index_entry">
<em class="property">property </em><code class="sig-name descname">search_index_entry</code><a class="headerlink" href="#evennia.help.models.HelpEntry.search_index_entry" title="Permalink to this definition"></a></dt>
<dd><p>Property for easily retaining a search index entry for this object.</p>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.staff_only">
<em class="property">property </em><code class="sig-name descname">staff_only</code><a class="headerlink" href="#evennia.help.models.HelpEntry.staff_only" title="Permalink to this definition"></a></dt>
<dd><p>A wrapper for getting database field <cite>db_staff_only</cite>.</p>
</dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.tags">
<code class="sig-name descname">tags</code><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.tags"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.tags" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="attribute">
<dt id="evennia.help.models.HelpEntry.typename">
<code class="sig-name descname">typename</code><em class="property"> = 'SharedMemoryModelBase'</em><a class="headerlink" href="#evennia.help.models.HelpEntry.typename" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.web_get_admin_url">
<code class="sig-name descname">web_get_admin_url</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.web_get_admin_url"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.web_get_admin_url" title="Permalink to this definition"></a></dt>
<dd><p>Returns the URI path for the Django Admin page for this object.</p>
<p>ex. Account#1 = /admin/accounts/accountdb/1/change/</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>URI path to Django Admin page for object.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>path (str)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.web_get_create_url">
<em class="property">classmethod </em><code class="sig-name descname">web_get_create_url</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.web_get_create_url"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.web_get_create_url" title="Permalink to this definition"></a></dt>
<dd><p>Returns the URI path for a View that allows users to create new
instances of this object.</p>
<p>ex. Chargen = /characters/create/</p>
<p>For this to work, the developer must have defined a named view somewhere
in urls.py that follows the format modelname-action, so in this case
a named view of character-create would be referenced by this method.</p>
<p>ex.
url(rcharacters/create/, ChargenView.as_view(), name=character-create)</p>
<p>If no View has been created and defined in urls.py, returns an
HTML anchor.</p>
<p>This method is naive and simply returns a path. Securing access to
the actual view and limiting who can create new objects is the
developers responsibility.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>URI path to object creation page, if defined.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>path (str)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.web_get_delete_url">
<code class="sig-name descname">web_get_delete_url</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.web_get_delete_url"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.web_get_delete_url" title="Permalink to this definition"></a></dt>
<dd><p>Returns the URI path for a View that allows users to delete this object.</p>
<p>ex. Oscar (Character) = /characters/oscar/1/delete/</p>
<p>For this to work, the developer must have defined a named view somewhere
in urls.py that follows the format modelname-action, so in this case
a named view of character-detail would be referenced by this method.</p>
<p>ex.
url(rcharacters/(?P&lt;slug&gt;[wd-]+)/(?P&lt;pk&gt;[0-9]+)/delete/$,</p>
<blockquote>
<div><p>CharDeleteView.as_view(), name=character-delete)</p>
</div></blockquote>
<p>If no View has been created and defined in urls.py, returns an
HTML anchor.</p>
<p>This method is naive and simply returns a path. Securing access to
the actual view and limiting who can delete this object is the developers
responsibility.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>URI path to object deletion page, if defined.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>path (str)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.web_get_detail_url">
<code class="sig-name descname">web_get_detail_url</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.web_get_detail_url"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.web_get_detail_url" title="Permalink to this definition"></a></dt>
<dd><p>Returns the URI path for a View that allows users to view details for
this object.</p>
<p>ex. Oscar (Character) = /characters/oscar/1/</p>
<p>For this to work, the developer must have defined a named view somewhere
in urls.py that follows the format modelname-action, so in this case
a named view of character-detail would be referenced by this method.</p>
<p>ex.
url(rcharacters/(?P&lt;slug&gt;[wd-]+)/(?P&lt;pk&gt;[0-9]+)/$,</p>
<blockquote>
<div><p>CharDetailView.as_view(), name=character-detail)</p>
</div></blockquote>
<p>If no View has been created and defined in urls.py, returns an
HTML anchor.</p>
<p>This method is naive and simply returns a path. Securing access to
the actual view and limiting who can view this object is the developers
responsibility.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>URI path to object detail page, if defined.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>path (str)</p>
</dd>
</dl>
</dd></dl>
<dl class="method">
<dt id="evennia.help.models.HelpEntry.web_get_update_url">
<code class="sig-name descname">web_get_update_url</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/help/models.html#HelpEntry.web_get_update_url"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.help.models.HelpEntry.web_get_update_url" title="Permalink to this definition"></a></dt>
<dd><p>Returns the URI path for a View that allows users to update this
object.</p>
<p>ex. Oscar (Character) = /characters/oscar/1/change/</p>
<p>For this to work, the developer must have defined a named view somewhere
in urls.py that follows the format modelname-action, so in this case
a named view of character-update would be referenced by this method.</p>
<p>ex.
url(rcharacters/(?P&lt;slug&gt;[wd-]+)/(?P&lt;pk&gt;[0-9]+)/change/$,</p>
<blockquote>
<div><p>CharUpdateView.as_view(), name=character-update)</p>
</div></blockquote>
<p>If no View has been created and defined in urls.py, returns an
HTML anchor.</p>
<p>This method is naive and simply returns a path. Securing access to
the actual view and limiting who can modify objects is the developers
responsibility.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns</dt>
<dd class="field-odd"><p>URI path to object update page, if defined.</p>
</dd>
<dt class="field-even">Return type</dt>
<dd class="field-even"><p>path (str)</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</div>
</div>
</div>
</div>
<footer>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2020, The Evennia developer community.
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> and ❤️ using a custom <a href="https://github.com/LinxiFan/Sphinx-theme">theme</a> based on <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'../',
VERSION:'1.0-dev',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</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>
<script type="text/javascript" src="../_static/language_data.js"></script>
<script type="text/javascript" src="../_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
</script>
</body>
</html>