|
|
@@ -39,7 +39,17 @@
|
|
|
<li><code>getRepository(modelName: string): Repository</code> - получить репозиторий</li>
|
|
|
</ul>
|
|
|
<p><strong>Пример</strong></p>
|
|
|
-<pre><code class="language-js"><span class="hl-3">import</span><span class="hl-1"> {</span><span class="hl-4">Schema</span><span class="hl-1">} </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">'@e22m4u/js-repository'</span><br/><br/><span class="hl-5">// создание экземпляра</span><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">schema</span><span class="hl-1"> = </span><span class="hl-6">new</span><span class="hl-1"> </span><span class="hl-0">Schema</span><span class="hl-1">();</span>
|
|
|
+<p>Импорт класса и создание экземпляра.</p>
|
|
|
+<pre><code class="language-js"><span class="hl-3">import</span><span class="hl-1"> {</span><span class="hl-4">Schema</span><span class="hl-1">} </span><span class="hl-3">from</span><span class="hl-1"> </span><span class="hl-2">'@e22m4u/js-repository'</span><span class="hl-1">;</span><br/><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">schema</span><span class="hl-1"> = </span><span class="hl-6">new</span><span class="hl-1"> </span><span class="hl-0">Schema</span><span class="hl-1">();</span>
|
|
|
+</code><button>Copy</button></pre>
|
|
|
+<p>Определение нового источника.</p>
|
|
|
+<pre><code class="language-js"><span class="hl-4">schema</span><span class="hl-1">.</span><span class="hl-0">defineDatasource</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">name:</span><span class="hl-1"> </span><span class="hl-2">'myMemory'</span><span class="hl-1">, </span><span class="hl-5">// название нового источника</span><br/><span class="hl-1"> </span><span class="hl-4">adapter:</span><span class="hl-1"> </span><span class="hl-2">'memory'</span><span class="hl-1">, </span><span class="hl-5">// выбранный адаптер</span><br/><span class="hl-1">});</span>
|
|
|
+</code><button>Copy</button></pre>
|
|
|
+<p>Определение новой модели.</p>
|
|
|
+<pre><code class="language-js"><span class="hl-4">schema</span><span class="hl-1">.</span><span class="hl-0">defineModel</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">name:</span><span class="hl-1"> </span><span class="hl-2">'product'</span><span class="hl-1">, </span><span class="hl-5">// название новой модели</span><br/><span class="hl-1"> </span><span class="hl-4">datasource:</span><span class="hl-1"> </span><span class="hl-2">'myMemory'</span><span class="hl-1">, </span><span class="hl-5">// выбранный источник</span><br/><span class="hl-1">});</span>
|
|
|
+</code><button>Copy</button></pre>
|
|
|
+<p>Получение репозитория по названию модели.</p>
|
|
|
+<pre><code class="language-js"><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">productRep</span><span class="hl-1"> = </span><span class="hl-4">schema</span><span class="hl-1">.</span><span class="hl-0">getRepository</span><span class="hl-1">(</span><span class="hl-2">'product'</span><span class="hl-1">);</span>
|
|
|
</code><button>Copy</button></pre>
|
|
|
<a id="md:источник-данных" class="tsd-anchor"></a><h2><a href="#md:источник-данных">Источник данных</a></h2><p>Источник хранит название выбранного адаптера и его настройки. Определяется
|
|
|
методом <code>defineDatasource</code> экземпляра схемы.</p>
|
|
|
@@ -89,8 +99,12 @@
|
|
|
<li><code>where: object</code> параметры выборки (см. Фильтрация)</li>
|
|
|
<li><code>filter: object</code> параметры возвращаемого результата (см. Фильтрация)</li>
|
|
|
</ul>
|
|
|
-<p><strong>Пример</strong></p>
|
|
|
-<pre><code class="language-js"><span class="hl-5">// получение репозитория для модели "country"</span><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">countryRep</span><span class="hl-1"> = </span><span class="hl-4">schema</span><span class="hl-1">.</span><span class="hl-0">getRepository</span><span class="hl-1">(</span><span class="hl-2">'country'</span><span class="hl-1">);</span><br/><br/><span class="hl-5">// добавление нового документа в коллекцию "country"</span><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">country</span><span class="hl-1"> = </span><span class="hl-3">await</span><span class="hl-1"> </span><span class="hl-4">countryRep</span><span class="hl-1">.</span><span class="hl-0">create</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">name:</span><span class="hl-1"> </span><span class="hl-2">'Russia'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">population:</span><span class="hl-1"> </span><span class="hl-8">143400000</span><span class="hl-1">,</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-5">// вывод результата</span><br/><span class="hl-4">console</span><span class="hl-1">.</span><span class="hl-0">log</span><span class="hl-1">(</span><span class="hl-4">country</span><span class="hl-1">);</span><br/><span class="hl-5">// {</span><br/><span class="hl-5">// "id": 1,</span><br/><span class="hl-5">// "name": "Russia",</span><br/><span class="hl-5">// "population": 143400000,</span><br/><span class="hl-5">// }</span>
|
|
|
+<p><strong>Примеры</strong></p>
|
|
|
+<p>Получение репозитория по названию модели.</p>
|
|
|
+<pre><code class="language-js"><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">countryRep</span><span class="hl-1"> = </span><span class="hl-4">schema</span><span class="hl-1">.</span><span class="hl-0">getRepository</span><span class="hl-1">(</span><span class="hl-2">'country'</span><span class="hl-1">);</span>
|
|
|
+</code><button>Copy</button></pre>
|
|
|
+<p>Добавление нового документа в коллекцию.</p>
|
|
|
+<pre><code class="language-js"><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-7">country</span><span class="hl-1"> = </span><span class="hl-3">await</span><span class="hl-1"> </span><span class="hl-4">countryRep</span><span class="hl-1">.</span><span class="hl-0">create</span><span class="hl-1">({</span><br/><span class="hl-1"> </span><span class="hl-4">name:</span><span class="hl-1"> </span><span class="hl-2">'Russia'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">population:</span><span class="hl-1"> </span><span class="hl-8">143400000</span><span class="hl-1">,</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-4">console</span><span class="hl-1">.</span><span class="hl-0">log</span><span class="hl-1">(</span><span class="hl-4">country</span><span class="hl-1">);</span><br/><span class="hl-5">// {</span><br/><span class="hl-5">// "id": 1,</span><br/><span class="hl-5">// "name": "Russia",</span><br/><span class="hl-5">// "population": 143400000,</span><br/><span class="hl-5">// }</span>
|
|
|
</code><button>Copy</button></pre>
|
|
|
<a id="md:свойства" class="tsd-anchor"></a><h2><a href="#md:свойства">Свойства</a></h2><p>Параметр <code>properties</code> находится в составе определения модели и принимает
|
|
|
объект, ключи которого являются полями документа, а значением тип поля
|