evennia/docs/latest/api/evennia.scripts.manager.html
Evennia docbuilder action 76d95c253e Updated HTML docs.
2026-01-12 16:26:53 +00:00

1254 lines
No EOL
111 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>
<html lang="en" data-content_root="../">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>evennia.scripts.manager &#8212; Evennia latest documentation</title>
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=d75fae25" />
<link rel="stylesheet" type="text/css" href="../_static/nature.css?v=279e0f84" />
<link rel="stylesheet" type="text/css" href="../_static/custom.css?v=e4a91a55" />
<script src="../_static/documentation_options.js?v=c6e86fd7"></script>
<script src="../_static/doctools.js?v=9bcbadda"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<link rel="icon" href="../_static/favicon.ico"/>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="evennia.scripts.models" href="evennia.scripts.models.html" />
<link rel="prev" title="evennia.scripts" href="evennia.scripts.html" />
</head><body>
<div class="related" role="navigation" aria-label="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="evennia.scripts.models.html" title="evennia.scripts.models"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="evennia.scripts.html" title="evennia.scripts"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-4"><a href="evennia.scripts.html" accesskey="U">evennia.scripts</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">evennia.scripts.manager</a></li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="module-evennia.scripts.manager">
<span id="evennia-scripts-manager"></span><h1>evennia.scripts.manager<a class="headerlink" href="#module-evennia.scripts.manager" title="Link to this heading"></a></h1>
<p>The custom manager for Scripts.</p>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptManager">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">ScriptManager</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptManager"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptManager" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager" title="evennia.scripts.manager.ScriptDBManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">ScriptDBManager</span></code></a>, <a class="reference internal" href="evennia.typeclasses.managers.html#evennia.typeclasses.managers.TypeclassManager" title="evennia.typeclasses.managers.TypeclassManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">TypeclassManager</span></code></a></p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">ScriptDBManager</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.managers.html#evennia.typeclasses.managers.TypedObjectManager" title="evennia.typeclasses.managers.TypedObjectManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">TypedObjectManager</span></code></a></p>
<p>This Scriptmanager implements methods for searching
and manipulating Scripts directly from the database.</p>
<p>Evennia-specific search methods (will return Typeclasses or
lists of Typeclasses, whereas Django-general methods will return
Querysets or database objects).</p>
<p>dbref (converter)
dbref_search
get_dbref_range
object_totals
typeclass_search
get_all_scripts_on_obj
get_all_scripts
delete_script
remove_non_persistent
validate
script_search (equivalent to evennia.search_script)
copy_script</p>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.get_all_scripts_on_obj">
<span class="sig-name descname"><span class="pre">get_all_scripts_on_obj</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager.get_all_scripts_on_obj"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.get_all_scripts_on_obj" title="Link to this definition"></a></dt>
<dd><p>Find all Scripts related to a particular object.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>obj</strong> (<em>Object</em>) Object whose Scripts we are looking for.</p></li>
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) Script identifier - can be given as a
dbref or name string. If given, only scripts matching the
key on the object will be returned.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>matches (list)</em> Matching scripts.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.get_all_scripts">
<span class="sig-name descname"><span class="pre">get_all_scripts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager.get_all_scripts"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.get_all_scripts" title="Link to this definition"></a></dt>
<dd><p>Get all scripts in the database.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>key</strong> (<em>str</em><em> or </em><em>int</em><em>, </em><em>optional</em>) Restrict result to only those
with matching key or dbref.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>scripts (list)</em> All scripts found, or those matching <strong>key</strong>.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.delete_script">
<span class="sig-name descname"><span class="pre">delete_script</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dbref</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager.delete_script"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.delete_script" title="Link to this definition"></a></dt>
<dd><p>This stops and deletes a specific script directly from the
script database.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>dbref</strong> (<em>int</em>) Database unique id.</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>This might be needed for global scripts not tied to a
specific game object</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.update_scripts_after_server_start">
<span class="sig-name descname"><span class="pre">update_scripts_after_server_start</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager.update_scripts_after_server_start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.update_scripts_after_server_start" title="Link to this definition"></a></dt>
<dd><p>Update/sync/restart/delete scripts after server shutdown/restart.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.search_script">
<span class="sig-name descname"><span class="pre">search_script</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ostring</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">only_timed</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">typeclass</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager.search_script"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.search_script" title="Link to this definition"></a></dt>
<dd><p>Search for a particular script.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ostring</strong> (<em>str</em>) Search criterion - a script dbef or key.</p></li>
<li><p><strong>obj</strong> (<em>Object</em><em>, </em><em>optional</em>) Limit search to scripts defined on
this object</p></li>
<li><p><strong>only_timed</strong> (<em>bool</em>) Limit search only to scripts that run
on a timer.</p></li>
<li><p><strong>typeclass</strong> (<em>class</em><em> or </em><em>str</em>) Typeclass or path to typeclass.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>Queryset</em> An iterable with 0, 1 or more results.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.script_search">
<span class="sig-name descname"><span class="pre">script_search</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ostring</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">only_timed</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">typeclass</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.script_search" title="Link to this definition"></a></dt>
<dd><p>Search for a particular script.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ostring</strong> (<em>str</em>) Search criterion - a script dbef or key.</p></li>
<li><p><strong>obj</strong> (<em>Object</em><em>, </em><em>optional</em>) Limit search to scripts defined on
this object</p></li>
<li><p><strong>only_timed</strong> (<em>bool</em>) Limit search only to scripts that run
on a timer.</p></li>
<li><p><strong>typeclass</strong> (<em>class</em><em> or </em><em>str</em>) Typeclass or path to typeclass.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>Queryset</em> An iterable with 0, 1 or more results.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.copy_script">
<span class="sig-name descname"><span class="pre">copy_script</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">original_script</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_locks</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager.copy_script"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.copy_script" title="Link to this definition"></a></dt>
<dd><p>Make an identical copy of the original_script.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>original_script</strong> (<em>Script</em>) The Script to copy.</p></li>
<li><p><strong>new_key</strong> (<em>str</em><em>, </em><em>optional</em>) Rename the copy.</p></li>
<li><p><strong>new_obj</strong> (<em>Object</em><em>, </em><em>optional</em>) Place copy on different Object.</p></li>
<li><p><strong>new_locks</strong> (<em>str</em><em>, </em><em>optional</em>) Give copy different locks from
the original.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>script_copy (Script)</em> </p>
<dl class="simple">
<dt>A new Script instance, copied from</dt><dd><p>the original.</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.ScriptDBManager.create_script">
<span class="sig-name descname"><span class="pre">create_script</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">typeclass</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">account</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">locks</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">interval</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">start_delay</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">repeats</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">persistent</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">autostart</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">report_to</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">desc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tags</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attributes</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptDBManager.create_script"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.ScriptDBManager.create_script" title="Link to this definition"></a></dt>
<dd><p>Create a new script. All scripts are a combination of a database
object that communicates with the database, and an typeclass that
decorates the database object into being different types of
scripts. Its behaviour is similar to the game objects except
scripts has a time component and are more limited in scope.</p>
<dl class="field-list simple">
<dt class="field-odd">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>typeclass</strong> (<em>class</em><em> or </em><em>str</em>) Class or python path to a typeclass.</p></li>
<li><p><strong>key</strong> (<em>str</em>) Name of the new object. If not set, a name of
#dbref will be set.</p></li>
<li><p><strong>obj</strong> (<em>Object</em>) The entity on which this Script sits. If this
is <strong>None</strong>, we are creating a “global” script.</p></li>
<li><p><strong>account</strong> (<em>Account</em>) The account on which this Script sits. It is
exclusiv to <strong>obj</strong>.</p></li>
<li><p><strong>locks</strong> (<em>str</em>) one or more lockstrings, separated by semicolons.</p></li>
<li><p><strong>interval</strong> (<em>int</em>) The triggering interval for this Script, in
seconds. If unset, the Script will not have a timing
component.</p></li>
<li><p><strong>start_delay</strong> (<em>bool</em>) If <strong>True</strong>, will wait <strong>interval</strong> seconds
before triggering the first time.</p></li>
<li><p><strong>repeats</strong> (<em>int</em>) The number of times to trigger before stopping.
If unset, will repeat indefinitely.</p></li>
<li><p><strong>persistent</strong> (<em>bool</em>) If this Script survives a server shutdown
or not (all Scripts will survive a reload).</p></li>
<li><p><strong>autostart</strong> (<em>bool</em>) If this Script will start immediately when
created or if the <strong>start</strong> method must be called explicitly.</p></li>
<li><p><strong>report_to</strong> (<em>Object</em>) The object to return error messages to.</p></li>
<li><p><strong>desc</strong> (<em>str</em>) Optional description of script</p></li>
<li><p><strong>tags</strong> (<em>list</em>) List of tags or tuples (tag, category).</p></li>
<li><p><strong>attributes</strong> (<em>list</em>) List if tuples (key, value) or (key, value, category)
(key, value, lockstring) or (key, value, lockstring, default_access).</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>script (obj)</em> An instance of the script created</p>
</dd>
</dl>
<p>See evennia.scripts.manager for methods to manipulate existing
scripts in the database.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">Q</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_connector</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_negated</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.Q" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Node</span></code></p>
<p>Encapsulate filters as objects that can then be combined logically (using
<strong>&amp;</strong> and <strong>|</strong>).</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.AND">
<span class="sig-name descname"><span class="pre">AND</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'AND'</span></em><a class="headerlink" href="#evennia.scripts.manager.Q.AND" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.OR">
<span class="sig-name descname"><span class="pre">OR</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'OR'</span></em><a class="headerlink" href="#evennia.scripts.manager.Q.OR" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.XOR">
<span class="sig-name descname"><span class="pre">XOR</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'XOR'</span></em><a class="headerlink" href="#evennia.scripts.manager.Q.XOR" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.__init__">
<span class="sig-name descname"><span class="pre">__init__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_connector</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_negated</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.Q.__init__" title="Link to this definition"></a></dt>
<dd><p>Construct a new Node. If no connector is given, use the default.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.check">
<span class="sig-name descname"><span class="pre">check</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">against</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">using</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'default'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.check"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.Q.check" title="Link to this definition"></a></dt>
<dd><p>Do a database query to check if the expressions of the Q instance
matches against the expressions.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.conditional">
<span class="sig-name descname"><span class="pre">conditional</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">True</span></em><a class="headerlink" href="#evennia.scripts.manager.Q.conditional" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.connectors">
<span class="sig-name descname"><span class="pre">connectors</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">(None,</span> <span class="pre">'AND',</span> <span class="pre">'OR',</span> <span class="pre">'XOR')</span></em><a class="headerlink" href="#evennia.scripts.manager.Q.connectors" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.deconstruct">
<span class="sig-name descname"><span class="pre">deconstruct</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.deconstruct"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.Q.deconstruct" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.default">
<span class="sig-name descname"><span class="pre">default</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'AND'</span></em><a class="headerlink" href="#evennia.scripts.manager.Q.default" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.flatten">
<span class="sig-name descname"><span class="pre">flatten</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.flatten"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.Q.flatten" title="Link to this definition"></a></dt>
<dd><p>Recursively yield this Q object and all subexpressions, in depth-first
order.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.identity">
<span class="sig-name descname"><span class="pre">identity</span></span><a class="headerlink" href="#evennia.scripts.manager.Q.identity" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.referenced_base_fields">
<span class="sig-name descname"><span class="pre">referenced_base_fields</span></span><a class="headerlink" href="#evennia.scripts.manager.Q.referenced_base_fields" title="Link to this definition"></a></dt>
<dd><p>Retrieve all base fields referenced directly or through F expressions
excluding any fields referenced through joins.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.replace_expressions">
<span class="sig-name descname"><span class="pre">replace_expressions</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">replacements</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.replace_expressions"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.Q.replace_expressions" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.Q.resolve_expression">
<span class="sig-name descname"><span class="pre">resolve_expression</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">query</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">allow_joins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">reuse</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">summarize</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">for_save</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.resolve_expression"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.Q.resolve_expression" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">TypeclassManager</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.managers.html#evennia.typeclasses.managers.TypedObjectManager" title="evennia.typeclasses.managers.TypedObjectManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">TypedObjectManager</span></code></a></p>
<p>Manager for the typeclasses. The main purpose of this manager is
to limit database queries to the given typeclass despite all
typeclasses technically being defined in the same core database
model.</p>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.all">
<span class="sig-name descname"><span class="pre">all</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.all"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.all" title="Link to this definition"></a></dt>
<dd><p>Overload method to return all matches, filtering for typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>objects (queryset)</em> The objects found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.all_family">
<span class="sig-name descname"><span class="pre">all_family</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.all_family"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.all_family" title="Link to this definition"></a></dt>
<dd><p>Return all matches, allowing matches from all subclasses of
the typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>objects (list)</em> The objects found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.annotate">
<span class="sig-name descname"><span class="pre">annotate</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.annotate"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.annotate" title="Link to this definition"></a></dt>
<dd><p>Overload annotate method to filter on typeclass before annotating.
:param *args: Positional arguments passed along to queryset annotate method.
:type *args: any
:param **kwargs: Keyword arguments passed along to queryset annotate method.
:type **kwargs: any</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>Annotated queryset.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.count">
<span class="sig-name descname"><span class="pre">count</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.count"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.count" title="Link to this definition"></a></dt>
<dd><p>Overload method to return number of matches, filtering for typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>integer</em> Number of objects found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.filter">
<span class="sig-name descname"><span class="pre">filter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.filter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.filter" title="Link to this definition"></a></dt>
<dd><p>Overload of the standard filter function. This filter will
limit itself to only the current typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>args</strong> (<em>any</em>) These are passed on as arguments to the default
django filter method.</p>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>kwargs</strong> (<em>any</em>) These are passed on as normal arguments
to the default django filter method.</p>
</dd>
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>objects (queryset)</em> The objects found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.filter_family">
<span class="sig-name descname"><span class="pre">filter_family</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.filter_family"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.filter_family" title="Link to this definition"></a></dt>
<dd><p>Variation of filter that allows results both from typeclass
and from subclasses of typeclass</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>args</strong> (<em>any</em>) These are passed on as arguments to the default
django filter method.</p>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>kwargs</strong> (<em>any</em>) These are passed on as normal arguments
to the default django filter method.</p>
</dd>
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>objects (list)</em> The objects found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.first">
<span class="sig-name descname"><span class="pre">first</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.first"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.first" title="Link to this definition"></a></dt>
<dd><p>Overload method to return first match, filtering for typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>object (object)</em> The object found.</p>
</dd>
<dt class="field-even">Raises<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>ObjectNotFound</strong> The exact name of this exception depends
on the model base used.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.get">
<span class="sig-name descname"><span class="pre">get</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.get"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.get" title="Link to this definition"></a></dt>
<dd><p>Overload the standard get. This will limit itself to only
return the current typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>args</strong> (<em>any</em>) These are passed on as arguments to the default
django get method.</p>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>kwargs</strong> (<em>any</em>) These are passed on as normal arguments
to the default django get method</p>
</dd>
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>object (object)</em> The object found.</p>
</dd>
<dt class="field-even">Raises<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>ObjectNotFound</strong> The exact name of this exception depends
on the model base used.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.get_family">
<span class="sig-name descname"><span class="pre">get_family</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.get_family"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.get_family" title="Link to this definition"></a></dt>
<dd><p>Variation of get that not only returns the current typeclass
but also all subclasses of that typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>kwargs</strong> (<em>any</em>) These are passed on as normal arguments
to the default django get method.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>objects (list)</em> The objects found.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>ObjectNotFound</strong> The exact name of this exception depends
on the model base used.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.last">
<span class="sig-name descname"><span class="pre">last</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.last"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.last" title="Link to this definition"></a></dt>
<dd><p>Overload method to return last match, filtering for typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>object (object)</em> The object found.</p>
</dd>
<dt class="field-even">Raises<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>ObjectNotFound</strong> The exact name of this exception depends
on the model base used.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.smart_search">
<span class="sig-name descname"><span class="pre">smart_search</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">query</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.smart_search"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.smart_search" title="Link to this definition"></a></dt>
<dd><p>Search by supplying a string with optional extra search criteria to aid the query.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>query</strong> (<em>All three can be combined in the same</em>) A search criteria that accepts extra search criteria on the following</p></li>
<li><p><strong>forms</strong> [key|alias|#dbref…]
[tag==&lt;tagstr&gt;[:category]…]
[attr==&lt;key&gt;:&lt;value&gt;:category…]</p></li>
<li><p><strong>query</strong></p></li>
<li><p><strong>spaces.</strong> (<em>separated by</em>)</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>matches (queryset)</em> </p>
<dl class="simple">
<dt>A queryset result matching all queries exactly. If wanting to use</dt><dd><p>spaces or ==, != in tags or attributes, enclose them in quotes.</p>
</dd>
</dl>
</p>
</dd>
</dl>
<p class="rubric">Example</p>
<p>house = smart_search(“key=foo alias=bar tag=house:building tag=magic attr=color:red”)</p>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>The flexibility of this method is limited by the input line format. Tag/attribute
matching only works for matching primitives. For even more complex queries, such as
in operations or object field matching, use the full django query language.</p>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.values">
<span class="sig-name descname"><span class="pre">values</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.values"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.values" title="Link to this definition"></a></dt>
<dd><p>Overload values method to filter on typeclass first.
:param *args: Positional arguments passed along to values method.
:type *args: any
:param **kwargs: Keyword arguments passed along to values method.
:type **kwargs: any</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>Queryset of values dictionaries, just filtered by typeclass first.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypeclassManager.values_list">
<span class="sig-name descname"><span class="pre">values_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypeclassManager.values_list"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypeclassManager.values_list" title="Link to this definition"></a></dt>
<dd><p>Overload values method to filter on typeclass first.
:param *args: Positional arguments passed along to values_list method.
:type *args: any
:param **kwargs: Keyword arguments passed along to values_list method.
:type **kwargs: any</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>Queryset of value_list tuples, just filtered by typeclass first.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">TypedObjectManager</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.utils.idmapper.manager.html#evennia.utils.idmapper.manager.SharedMemoryManager" title="evennia.utils.idmapper.manager.SharedMemoryManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">SharedMemoryManager</span></code></a></p>
<p>Common ObjectManager for all dbobjects.</p>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.create_tag">
<span class="sig-name descname"><span class="pre">create_tag</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tagtype</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.create_tag"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.create_tag" title="Link to this definition"></a></dt>
<dd><p>Create a new Tag of the base type associated with this
object. This makes sure to create case-insensitive tags.
If the exact same tag configuration (key+category+tagtype+dbmodel)
exists on the model, a new tag will not be created, but an old
one returned.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) Tag key. Not case sensitive.</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) Tag category. Not case sensitive.</p></li>
<li><p><strong>data</strong> (<em>str</em><em>, </em><em>optional</em>) Extra information about the tag.</p></li>
<li><p><strong>tagtype</strong> (<em>str</em><em> or </em><em>None</em><em>, </em><em>optional</em>) type of Tag, by default
this is either <strong>None</strong> (a normal Tag), <strong>alias</strong> or
<strong>permission</strong>.</p></li>
</ul>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>The <strong>data</strong> field is not part of the uniqueness of the tag:
Setting <strong>data</strong> on an existing tag will overwrite the old
data field. It is intended only as a way to carry
information about the tag (like a help text), not to carry
any information about the tagged objects themselves.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.dbref">
<span class="sig-name descname"><span class="pre">dbref</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dbref</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">reqhash</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.dbref"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.dbref" title="Link to this definition"></a></dt>
<dd><p>Determing if input is a valid dbref.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>dbref</strong> (<em>str</em><em> or </em><em>int</em>) A possible dbref.</p></li>
<li><p><strong>reqhash</strong> (<em>bool</em><em>, </em><em>optional</em>) If the “#” is required for this
to be considered a valid hash.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>dbref (int or None)</em> The integer part of the dbref.</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>Valid forms of dbref (database reference number) are
either a string #N or an integer N.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.dbref_search">
<span class="sig-name descname"><span class="pre">dbref_search</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dbref</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.dbref_search"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.dbref_search" title="Link to this definition"></a></dt>
<dd><p>Alias to get_id.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>dbref</strong> (<em>str</em><em> or </em><em>int</em>) The id to search for.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>Queryset</em> Queryset with 0 or 1 match.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_alias">
<span class="sig-name descname"><span class="pre">get_alias</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_alias"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_alias" title="Link to this definition"></a></dt>
<dd><p>Get an alias from the database.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) The permissions identifier.</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The permissions category.</p></li>
<li><p><strong>obj</strong> (<em>object</em><em>, </em><em>optional</em>) The object on which this Tag is set.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>alias (list)</em> Alias objects.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_attribute">
<span class="sig-name descname"><span class="pre">get_attribute</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">strvalue</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attrtype</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_attribute"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_attribute" title="Link to this definition"></a></dt>
<dd><p>Return Attribute objects by key, by category, by value, by strvalue, by
object (it is stored on) or with a combination of those criteria.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) The attributes key to search for</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The category of the attribute(s) to search for.</p></li>
<li><p><strong>value</strong> (<em>str</em><em>, </em><em>optional</em>) The attribute value to search for.
Note that this is not a very efficient operation since it
will query for a pickled entity. Mutually exclusive to
<strong>strvalue</strong>.</p></li>
<li><p><strong>strvalue</strong> (<em>str</em><em>, </em><em>optional</em>) The str-value to search for.
Most Attributes will not have strvalue set. This is
mutually exclusive to the <strong>value</strong> keyword and will take
precedence if given.</p></li>
<li><p><strong>obj</strong> (<em>Object</em><em>, </em><em>optional</em>) On which object the Attribute to
search for is.</p></li>
<li><p><strong>attrype</strong> (<em>str</em><em>, </em><em>optional</em>) An attribute-type to search for.
By default this is either <strong>None</strong> (normal Attributes) or
<strong>“nick”</strong>.</p></li>
<li><p><strong>**kwargs</strong> (<em>any</em>) Currently unused. Reserved for future use.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>list</em> The matching Attributes.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_by_alias">
<span class="sig-name descname"><span class="pre">get_by_alias</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_by_alias"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_by_alias" title="Link to this definition"></a></dt>
<dd><p>Return objects having aliases with a given key or category or
combination of the two.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) Alias key. Not case sensitive.</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) Alias category. Not case sensitive.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>objects (list)</em> Objects with matching alias.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_by_attribute">
<span class="sig-name descname"><span class="pre">get_by_attribute</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">strvalue</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attrtype</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_by_attribute"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_by_attribute" title="Link to this definition"></a></dt>
<dd><p>Return objects having attributes with the given key, category,
value, strvalue or combination of those criteria.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) The attributes key to search for</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The category of the attribute
to search for.</p></li>
<li><p><strong>value</strong> (<em>str</em><em>, </em><em>optional</em>) The attribute value to search for.
Note that this is not a very efficient operation since it
will query for a pickled entity. Mutually exclusive to
<strong>strvalue</strong>.</p></li>
<li><p><strong>strvalue</strong> (<em>str</em><em>, </em><em>optional</em>) The str-value to search for.
Most Attributes will not have strvalue set. This is
mutually exclusive to the <strong>value</strong> keyword and will take
precedence if given.</p></li>
<li><p><strong>attrype</strong> (<em>str</em><em>, </em><em>optional</em>) An attribute-type to search for.
By default this is either <strong>None</strong> (normal Attributes) or
<strong>“nick”</strong>.</p></li>
<li><p><strong>kwargs</strong> (<em>any</em>) Currently unused. Reserved for future use.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>obj (list)</em> Objects having the matching Attributes.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_by_nick">
<span class="sig-name descname"><span class="pre">get_by_nick</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">nick</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'inputline'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_by_nick"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_by_nick" title="Link to this definition"></a></dt>
<dd><p>Get object based on its key or nick.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) The attributes key to search for</p></li>
<li><p><strong>nick</strong> (<em>str</em><em>, </em><em>optional</em>) The nickname to search for</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The category of the nick
to search for.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>obj (list)</em> Objects having the matching Nicks.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_by_permission">
<span class="sig-name descname"><span class="pre">get_by_permission</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_by_permission"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_by_permission" title="Link to this definition"></a></dt>
<dd><p>Return objects having permissions with a given key or category or
combination of the two.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) Permissions key. Not case sensitive.</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) Permission category. Not case sensitive.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>objects (list)</em> Objects with matching permission.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_by_tag">
<span class="sig-name descname"><span class="pre">get_by_tag</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tagtype</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_by_tag"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_by_tag" title="Link to this definition"></a></dt>
<dd><p>Return objects having tags with a given key or category or combination of the two.
Also accepts multiple tags/category/tagtype</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em> or </em><em>list</em><em>, </em><em>optional</em>) Tag key or list of keys. Not case sensitive.</p></li>
<li><p><strong>category</strong> (<em>str</em><em> or </em><em>list</em><em>, </em><em>optional</em>) Tag category. Not case sensitive.
If <strong>key</strong> is a list, a single category can either apply to all
keys in that list or this must be a list matching the <strong>key</strong>
list element by element. If no <strong>key</strong> is given, all objects with
tags of this category are returned.</p></li>
<li><p><strong>tagtype</strong> (<em>str</em><em>, </em><em>optional</em>) type of Tag, by default
this is either <strong>None</strong> (a normal Tag), <strong>alias</strong> or
<strong>permission</strong>. This always apply to all queried tags.</p></li>
</ul>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>match</strong> (<em>str</em>) “all” (default) or “any”; determines whether the
target object must be tagged with ALL of the provided
tags/categories or ANY single one. ANY will perform a weighted
sort, so objects with more tag matches will outrank those with
fewer tag matches.</p>
</dd>
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>objects (list)</em> Objects with matching tag.</p>
</dd>
<dt class="field-even">Raises<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>IndexError</strong> If <strong>key</strong> and <strong>category</strong> are both lists and <strong>category</strong> is shorter
than <strong>key</strong>.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_dbref_range">
<span class="sig-name descname"><span class="pre">get_dbref_range</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">min_dbref</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_dbref</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_dbref_range"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_dbref_range" title="Link to this definition"></a></dt>
<dd><p>Get objects within a certain range of dbrefs.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>min_dbref</strong> (<em>int</em>) Start of dbref range.</p></li>
<li><p><strong>max_dbref</strong> (<em>int</em>) End of dbref range (inclusive)</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>objects (list)</em> </p>
<dl class="simple">
<dt>TypedObjects with dbrefs within</dt><dd><p>the given dbref ranges.</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_id">
<span class="sig-name descname"><span class="pre">get_id</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dbref</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_id"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_id" title="Link to this definition"></a></dt>
<dd><p>Find object with given dbref.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>dbref</strong> (<em>str</em><em> or </em><em>int</em>) The id to search for.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>object (TypedObject)</em> The matched object.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_nick">
<span class="sig-name descname"><span class="pre">get_nick</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">strvalue</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_nick"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_nick" title="Link to this definition"></a></dt>
<dd><p>Get a nick, in parallel to <strong>get_attribute</strong>.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) The nickss key to search for</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The category of the nicks(s) to search for.</p></li>
<li><p><strong>value</strong> (<em>str</em><em>, </em><em>optional</em>) The attribute value to search for. Note that this
is not a very efficient operation since it will query for a pickled
entity. Mutually exclusive to <strong>strvalue</strong>.</p></li>
<li><p><strong>strvalue</strong> (<em>str</em><em>, </em><em>optional</em>) The str-value to search for. Most Attributes
will not have strvalue set. This is mutually exclusive to the <strong>value</strong>
keyword and will take precedence if given.</p></li>
<li><p><strong>obj</strong> (<em>Object</em><em>, </em><em>optional</em>) On which object the Attribute to search for is.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>nicks (list)</em> The matching Nicks.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_permission">
<span class="sig-name descname"><span class="pre">get_permission</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_permission"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_permission" title="Link to this definition"></a></dt>
<dd><p>Get a permission from the database.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) The permissions identifier.</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The permissions category.</p></li>
<li><p><strong>obj</strong> (<em>object</em><em>, </em><em>optional</em>) The object on which this Tag is set.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>permission (list)</em> Permission objects.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_tag">
<span class="sig-name descname"><span class="pre">get_tag</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tagtype</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">global_search</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_tag"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_tag" title="Link to this definition"></a></dt>
<dd><p>Return Tag objects by key, by category, by object (it is
stored on) or with a combination of those criteria.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) The Tags key to search for</p></li>
<li><p><strong>category</strong> (<em>str</em><em>, </em><em>optional</em>) The Tag of the attribute(s)
to search for.</p></li>
<li><p><strong>obj</strong> (<em>Object</em><em>, </em><em>optional</em>) On which object the Tag to
search for is.</p></li>
<li><p><strong>tagtype</strong> (<em>str</em><em>, </em><em>optional</em>) One of <strong>None</strong> (normal tags),
“alias” or “permission”</p></li>
<li><p><strong>global_search</strong> (<em>bool</em><em>, </em><em>optional</em>) Include all possible tags,
not just tags on this object</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>tag (list)</em> The matching Tags.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.get_typeclass_totals">
<span class="sig-name descname"><span class="pre">get_typeclass_totals</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">object</span></span></span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.get_typeclass_totals"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.get_typeclass_totals" title="Link to this definition"></a></dt>
<dd><p>Returns a queryset of typeclass composition statistics.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><p><em>qs (Queryset)</em> </p>
<dl class="simple">
<dt>A queryset of dicts containing the typeclass (name),</dt><dd><p>the count of objects with that typeclass and a float representing
the percentage of objects associated with the typeclass.</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.object_totals">
<span class="sig-name descname"><span class="pre">object_totals</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.object_totals"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.object_totals" title="Link to this definition"></a></dt>
<dd><p>Get info about database statistics.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><p><em>census (dict)</em> </p>
<dl class="simple">
<dt>A dictionary <strong>{typeclass_path: number, …}</strong> with</dt><dd><p>all the typeclasses active in-game as well as the number
of such objects defined (i.e. the number of database
object having that typeclass set on themselves).</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.search_dbref">
<span class="sig-name descname"><span class="pre">search_dbref</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dbref</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.search_dbref" title="Link to this definition"></a></dt>
<dd><p>Alias to get_id.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>dbref</strong> (<em>str</em><em> or </em><em>int</em>) The id to search for.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>Queryset</em> Queryset with 0 or 1 match.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.scripts.manager.TypedObjectManager.typeclass_search">
<span class="sig-name descname"><span class="pre">typeclass_search</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">typeclass</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">include_children</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">include_parents</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/managers.html#TypedObjectManager.typeclass_search"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.TypedObjectManager.typeclass_search" title="Link to this definition"></a></dt>
<dd><p>Searches through all objects returning those which are of the
specified typeclass.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>typeclass</strong> (<em>str</em><em> or </em><em>class</em>) A typeclass class or a python path to a typeclass.</p></li>
<li><p><strong>include_children</strong> (<em>bool</em><em>, </em><em>optional</em>) Return objects with
given typeclass <em>and</em> all children inheriting from this
typeclass. Mutually exclusive to <strong>include_parents</strong>.</p></li>
<li><p><strong>include_parents</strong> (<em>bool</em><em>, </em><em>optional</em>) Return objects with
given typeclass <em>and</em> all parents to this typeclass.
Mutually exclusive to <strong>include_children</strong>.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>objects (list)</em> The objects found with the given typeclasses.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>ImportError</strong> If the provided <strong>typeclass</strong> is not a valid typeclass or the
path to an existing typeclass.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.scripts.manager.class_from_module">
<span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">class_from_module</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">defaultpaths</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">fallback</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#class_from_module"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.class_from_module" title="Link to this definition"></a></dt>
<dd><p>Return a class from a module, given the class full python path. This is
primarily used to convert db_typeclass_path:s to classes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> (<em>str</em>) Full Python dot-path to module.</p></li>
<li><p><strong>defaultpaths</strong> (<em>iterable</em><em>, </em><em>optional</em>) If a direct import from <strong>path</strong> fails,
try subsequent imports by prepending those paths to <strong>path</strong>.</p></li>
<li><p><strong>fallback</strong> (<em>str</em>) If all other attempts fail, use this path as a fallback.
This is intended as a last-resort. In the example of Evennia
loading, this would be a path to a default parent class in the
evennia repo itself.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>class (Class)</em> An uninstantiated class recovered from path.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>ImportError</strong> If all loading failed.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.scripts.manager.dbid_to_obj">
<span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">dbid_to_obj</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">inp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">objclass</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">raise_errors</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.scripts.manager.dbid_to_obj" title="Link to this definition"></a></dt>
<dd><p>Convert a #dbref to a valid object.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inp</strong> (<em>str</em><em> or </em><em>int</em>) A valid #dbref.</p></li>
<li><p><strong>objclass</strong> (<em>class</em>) A valid django model to filter against.</p></li>
<li><p><strong>raise_errors</strong> (<em>bool</em><em>, </em><em>optional</em>) Whether to raise errors
or return <strong>None</strong> on errors.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>obj (Object or None)</em> An entity loaded from the dbref.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>Exception</strong> If <strong>raise_errors</strong> is <strong>True</strong> and
<strong>objclass.objects.get(id=dbref)</strong> did not return a valid
object.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.scripts.manager.make_iter">
<span class="sig-prename descclassname"><span class="pre">evennia.scripts.manager.</span></span><span class="sig-name descname"><span class="pre">make_iter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#make_iter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.manager.make_iter" title="Link to this definition"></a></dt>
<dd><p>Makes sure that the object is always iterable.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>obj</strong> (<em>any</em>) Object to make iterable.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>iterable (list or iterable)</em> </p>
<dl class="simple">
<dt>The same object</dt><dd><p>passed-through or made iterable.</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
</section>
<div class="clearer"></div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="Main">
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="../index.html">
<img class="logo" src="../_static/evennia_logo.png" alt="Logo of Evennia"/>
</a></p>
<search id="searchbox" style="display: none" role="search">
<h3 id="searchlabel">Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="../search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
<input type="submit" value="Go" />
</form>
</div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>
<h3><a href="../index.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">evennia.scripts.manager</a><ul>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptManager"><code class="docutils literal notranslate"><span class="pre">ScriptManager</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager</span></code></a><ul>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.get_all_scripts_on_obj"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.get_all_scripts_on_obj()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.get_all_scripts"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.get_all_scripts()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.delete_script"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.delete_script()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.update_scripts_after_server_start"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.update_scripts_after_server_start()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.search_script"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.search_script()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.script_search"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.script_search()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.copy_script"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.copy_script()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.ScriptDBManager.create_script"><code class="docutils literal notranslate"><span class="pre">ScriptDBManager.create_script()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q"><code class="docutils literal notranslate"><span class="pre">Q</span></code></a><ul>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.AND"><code class="docutils literal notranslate"><span class="pre">Q.AND</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.OR"><code class="docutils literal notranslate"><span class="pre">Q.OR</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.XOR"><code class="docutils literal notranslate"><span class="pre">Q.XOR</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.__init__"><code class="docutils literal notranslate"><span class="pre">Q.__init__()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.check"><code class="docutils literal notranslate"><span class="pre">Q.check()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.conditional"><code class="docutils literal notranslate"><span class="pre">Q.conditional</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.connectors"><code class="docutils literal notranslate"><span class="pre">Q.connectors</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.deconstruct"><code class="docutils literal notranslate"><span class="pre">Q.deconstruct()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.default"><code class="docutils literal notranslate"><span class="pre">Q.default</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.flatten"><code class="docutils literal notranslate"><span class="pre">Q.flatten()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.identity"><code class="docutils literal notranslate"><span class="pre">Q.identity</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.referenced_base_fields"><code class="docutils literal notranslate"><span class="pre">Q.referenced_base_fields</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.replace_expressions"><code class="docutils literal notranslate"><span class="pre">Q.replace_expressions()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.Q.resolve_expression"><code class="docutils literal notranslate"><span class="pre">Q.resolve_expression()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager"><code class="docutils literal notranslate"><span class="pre">TypeclassManager</span></code></a><ul>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.all"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.all()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.all_family"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.all_family()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.annotate"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.annotate()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.count"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.count()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.filter"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.filter()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.filter_family"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.filter_family()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.first"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.first()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.get"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.get()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.get_family"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.get_family()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.last"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.last()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.smart_search"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.smart_search()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.values"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.values()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypeclassManager.values_list"><code class="docutils literal notranslate"><span class="pre">TypeclassManager.values_list()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager</span></code></a><ul>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.create_tag"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.create_tag()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.dbref"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.dbref()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.dbref_search"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.dbref_search()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_alias"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_alias()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_attribute"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_attribute()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_by_alias"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_by_alias()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_by_attribute"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_by_attribute()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_by_nick"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_by_nick()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_by_permission"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_by_permission()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_by_tag"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_by_tag()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_dbref_range"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_dbref_range()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_id"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_id()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_nick"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_nick()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_permission"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_permission()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_tag"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_tag()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.get_typeclass_totals"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.get_typeclass_totals()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.object_totals"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.object_totals()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.search_dbref"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.search_dbref()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.TypedObjectManager.typeclass_search"><code class="docutils literal notranslate"><span class="pre">TypedObjectManager.typeclass_search()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.scripts.manager.class_from_module"><code class="docutils literal notranslate"><span class="pre">class_from_module()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.dbid_to_obj"><code class="docutils literal notranslate"><span class="pre">dbid_to_obj()</span></code></a></li>
<li><a class="reference internal" href="#evennia.scripts.manager.make_iter"><code class="docutils literal notranslate"><span class="pre">make_iter()</span></code></a></li>
</ul>
</li>
</ul>
<div>
<h4>Previous topic</h4>
<p class="topless"><a href="evennia.scripts.html"
title="previous chapter">evennia.scripts</a></p>
</div>
<div>
<h4>Next topic</h4>
<p class="topless"><a href="evennia.scripts.models.html"
title="next chapter">evennia.scripts.models</a></p>
</div>
<div role="note" aria-label="source link">
<!--h3>This Page</h3-->
<ul class="this-page-menu">
<li><a href="../_sources/api/evennia.scripts.manager.md.txt"
rel="nofollow">Show Page Source</a></li>
</ul>
</div><h3>Links</h3>
<ul>
<li><a href="https://www.evennia.com/docs/latest/index.html">Documentation Top</a> </li>
<li><a href="https://www.evennia.com">Evennia Home</a> </li>
<li><a href="https://github.com/evennia/evennia">Github</a> </li>
<li><a href="http://games.evennia.com">Game Index</a> </li>
<li>
<a href="https://discord.gg/AJJpcRUhtF">Discord</a> -
<a href="https://github.com/evennia/evennia/discussions">Discussions</a> -
<a href="https://evennia.blogspot.com/">Blog</a>
</li>
</ul>
<h3>Doc Versions</h3>
<ul>
<li>
<a href="https://www.evennia.com/docs/latest/index.html">latest (main branch)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/5.x/index.html">v5.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/4.x/index.html">v4.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/3.x/index.html">v3.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/2.x/index.html">v2.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/1.x/index.html">v1.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/0.x/index.html">v0.9.5 branch (outdated)</a>
</li>
</ul>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="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="evennia.scripts.models.html" title="evennia.scripts.models"
>next</a> |</li>
<li class="right" >
<a href="evennia.scripts.html" title="evennia.scripts"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-4"><a href="evennia.scripts.html" >evennia.scripts</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">evennia.scripts.manager</a></li>
</ul>
</div>
<div class="footer" role="contentinfo">
&#169; Copyright 2024, The Evennia developer community.
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
</div>
</body>
</html>