{"title":"Daingneáin","version":"5.2","locale":"ga","docname":"topics/db/fixtures","url":"/ga/5.2/topics/db/fixtures/","canonical":"https://djangodocs.dev/ga/5.2/topics/db/fixtures/","summary":"Is bailiúchán comhaid é daingneamh ina bhfuil ábhar sraitheach an bhunachar sonraí. Tá ainm uathúil ag gach daingneán, agus is féidir na comhaid a chuimsíonn an…","html":"<span id=\"fixtures-explanation\"></span><h1>Daingneáin<a class=\"heading-anchor\" href=\"#fixtures\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Is bailiúchán comhaid é <em>daingneamh</em> ina bhfuil ábhar sraitheach an bhunachar sonraí. Tá ainm uathúil ag gach daingneán, agus is féidir na comhaid a chuimsíonn an daingneán a dháileadh thar eolairí iolracha, in iolrfheidhmchláir.</p>\n<aside class=\"admonition admonition-seealso\">\n<p class=\"admonition-title\">See also</p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"/ga/5.2/howto/initial-data/\"><span class=\"doc\">Conas sonraí tosaigh a sholáthar do mhúnlaí</span></a></p></li>\n</ul>\n</aside>\n<section id=\"how-to-produce-a-fixture\">\n<h2>Conas daingneán a tháirgeadh<a class=\"heading-anchor\" href=\"#how-to-produce-a-fixture\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>&lt;dumpdata&gt;Is féidir daingneáin a ghiniúint trí:djadmin: <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">`</span></a>manage.py dumpdata <a href=\"#id3\"><span class=\"problematic\" id=\"id4\">`</span></a>. Is féidir daingneáin saincheaptha a ghiniúint freisin trí úsáid a bhaint as go díreach: doc: <a href=\"#id5\"><span class=\"problematic\" id=\"id6\">`</span></a>uirlisí sraitheach' nó fiú trí iad a lámhscríobh &lt;/topics/serialization&gt;.</p>\n</section>\n<section id=\"how-to-use-a-fixture\">\n<h2>Conas daingneán a úsáid<a class=\"heading-anchor\" href=\"#how-to-use-a-fixture\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>&lt;topics-testing-fixtures&gt;Is féidir daingneáin a úsáid chun an bunachar sonraí a réamh-dhaonrú le sonraí le haghaidh: ref: <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">`</span></a>tástálacha <a href=\"#id3\"><span class=\"problematic\" id=\"id4\">`</span></a>:</p>\n<div class=\"code-block\" data-language=\"python\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python code\"><code><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">MyTestCase</span><span class=\"p\">(</span><span class=\"n\">TestCase</span><span class=\"p\">):</span>\n    <span class=\"n\">fixtures</span> <span class=\"o\">=</span> <span class=\"p\">[</span><span class=\"s2\">&quot;fixture-label&quot;</span><span class=\"p\">]</span>\n</code></pre></div>\n<p>nó chun roinnt: ref: sonraí tosaigh `a sholáthar ag baint úsáide as an ordú &lt;initial-data-via-fixtures&gt;:djadmin: `loaddata:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>django-admin<span class=\"w\"> </span>loaddata<span class=\"w\"> </span>&lt;fixture<span class=\"w\"> </span>label&gt;\n</code></pre></div>\n</section>\n<section id=\"how-fixtures-are-discovered\">\n<h2>Conas a aimsítear daingneáin<a class=\"heading-anchor\" href=\"#how-fixtures-are-discovered\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Déanfaidh Django cuardach sna háiteanna seo le haghaidh daingneáin:</p>\n<ol class=\"arabic simple\">\n<li><p>In eolaire <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">``</span></a>daingneáin <a href=\"#id3\"><span class=\"problematic\" id=\"id4\">``</span></a>de gach feidhmchlár suiteáilte</p></li>\n<li><p>In aon eolaire atá liostaithe sa socrú: FIXTURE_DIRS</p></li>\n<li><p>Sa chosán litriúil a ainmníonn an daingneán</p></li>\n</ol>\n<p>Luchtálfaidh Django aon daingneáin agus gach daingneán a aimsíonn sé sna háiteanna seo a mheaitseálann leis na hainmneacha daingneáin Má tá síneadh comhad ag an daingneán ainmnithe, ní luchtálfar ach daingneáin den chineál sin. Mar shampla:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>django-admin<span class=\"w\"> </span>loaddata<span class=\"w\"> </span>mydata.json\n</code></pre></div>\n<p>ní dhéanfaí ach daingneáin JSON ar a dtugtar mydata a luchtú. Caithfidh an síneadh daingneáin a fhreagraíonn d'ainm cláraithe a: ref: serializer &lt;serialization-formats&gt;`(m.sh., ``json` nó <code class=\"docutils literal notranslate\"><span class=\"pre\">xml</span></code>).</p>\n<p>Má fhágann tú na síntí, cuardóidh Django gach cineál daingneáin atá ar fáil le haghaidh daingneáin mheaitseála. Mar shampla:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>django-admin<span class=\"w\"> </span>loaddata<span class=\"w\"> </span>mydata\n</code></pre></div>\n<p>lorgaíodh aon daingneán d'aon chineál daingneáin ar a dtugtar <code class=\"docutils literal notranslate\"><span class=\"pre\">mydata`.</span> <span class=\"pre\">Dá</span> <span class=\"pre\">mbeadh</span> <span class=\"pre\">`mydata.json</span></code> i eolaire daingneáin, luchtálfaí an daingneán sin mar daingneán JSON.</p>\n<p>Is féidir comhpháirteanna eolaire a bheith san áireamh ar na daingneáin a Cuirfear na heolairí seo san áireamh sa chosán cuardaigh. Mar shampla:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>django-admin<span class=\"w\"> </span>loaddata<span class=\"w\"> </span>foo/bar/mydata.json\n</code></pre></div>\n<p>chuardódh sé <code class=\"docutils literal notranslate\"><span class=\"pre\">&lt;app_label&gt;/fixtures/foo/bar/mydata.json</span></code> do gach feidhmchlár suiteáilte, <code class=\"docutils literal notranslate\"><span class=\"pre\">/foo/bar/mydata.json</span></code> do gach eolaire in:setting: FIXTURE_DIRS, agus an cosán litriúil <code class=\"docutils literal notranslate\"><span class=\"pre\">foo/bar</span> <span class=\"pre\">&lt;dirname&gt;/mydata.json</span></code>.</p>\n<section id=\"fixtures-loading-order\">\n<h3>Ordú luchtaithe daingneo<a class=\"heading-anchor\" href=\"#fixtures-loading-order\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Is féidir daingneáin iolracha a shonrú san ionchur céanna. Mar shampla:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>django-admin<span class=\"w\"> </span>loaddata<span class=\"w\"> </span>mammals<span class=\"w\"> </span>birds<span class=\"w\"> </span>insects\n</code></pre></div>\n<p>nó i rang cásanna tástála:</p>\n<div class=\"code-block\" data-language=\"python\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python code\"><code><span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">AnimalTestCase</span><span class=\"p\">(</span><span class=\"n\">TestCase</span><span class=\"p\">):</span>\n    <span class=\"n\">fixtures</span> <span class=\"o\">=</span> <span class=\"p\">[</span><span class=\"s2\">&quot;mammals&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;birds&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;insects&quot;</span><span class=\"p\">]</span>\n</code></pre></div>\n<p>Leanann an t-ord ina luchtaítear daingneáin an t-ord ina bhfuil siad liostaithe, cibé acu agus an t-ordú bainistíochta á úsáid agat nó nuair a liostaítear iad i rang an cháis tástála mar a thaispeántar thuas.</p>\n<p>Sna samplaí seo, luchtálfar na daingneáin go léir darb ainm <code class=\"docutils literal notranslate\"><span class=\"pre\">mamaí</span> <span class=\"pre\">``ó</span> <span class=\"pre\">gach</span> <span class=\"pre\">feidhmchlár</span> <span class=\"pre\">(san</span> <span class=\"pre\">ord</span> <span class=\"pre\">ina</span> <span class=\"pre\">sainmhínítear</span> <span class=\"pre\">feidhmchláir</span> <span class=\"pre\">in:setting:</span> <span class=\"pre\">`INSTALLED_APPS`)</span> <span class=\"pre\">ar</span> <span class=\"pre\">dtús.</span> <span class=\"pre\">Ina</span> <span class=\"pre\">dhiaidh</span> <span class=\"pre\">sin,</span> <span class=\"pre\">luchtálfar</span> <span class=\"pre\">na</span> <span class=\"pre\">daingneáin</span> <span class=\"pre\">``éan</span></code> go léir, agus ina dhiaidh sin beidh na daingneáin <a href=\"#id1\"><span class=\"problematic\" id=\"id2\">``</span></a>feithidí <a href=\"#id3\"><span class=\"problematic\" id=\"id4\">``</span></a>go léir ina dhiaidh sin.</p>\n<p>Bí ar an eolas má thacaíonn cúltaca an bhunachar sonraí le srianta leibhéal sraithe, déanfar na srianta seo a sheiceáil ag deireadh an idirbheart. D'fhéadfadh earráid ualaigh a bheith mar thoradh ar aon chaidrimh ar fud daingneáin mura dtacaíonn cumraíocht an bhunachar sonraí le seiceáil srianta iarchurtha (féach do na doiciméid <a class=\"reference external\" href=\"https://dev.mysql.com/doc/refman/en/constraint-foreign-key.html\">MySQL</a> mar shampla).</p>\n</section>\n</section>\n<section id=\"how-fixtures-are-saved-to-the-database\">\n<h2>Conas a shábháil daingneáin sa bhunachar sonraí<a class=\"heading-anchor\" href=\"#how-fixtures-are-saved-to-the-database\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Nuair a phróiseáiltear comhaid daingneáin, sábhálfar na sonraí chuig an mbunachar sonraí mar atá. Samhail sainmhínithe: meth: ~django.db.models.model.save ní ghlaofar modhanna, agus glaofar aon chomharthaí: ~django.db.models.signals.pre_save nó:data: ~django.db.models.signals.post_save le <code class=\"docutils literal notranslate\"><span class=\"pre\">raw=true</span></code> ós rud é nach bhfuil ach tréithe áitiúil don tsamhail múnla. B'fhéidir gur mhaith leat, mar shampla, láimhseálaithe a dhíchumasú a dhéanann rochtain ar réimsí gaolmhara nach bhfuil i láthair le linn luchtú daingneáin agus a ardódh eisceacht ar shlí eile</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.db.models.signals</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">post_save</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">.models</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">MyModel</span>\n\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">my_handler</span><span class=\"p\">(</span><span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span>\n    <span class=\"c1\"># disable the handler during fixture loading</span>\n    <span class=\"k\">if</span> <span class=\"n\">kwargs</span><span class=\"p\">[</span><span class=\"s2\">&quot;raw&quot;</span><span class=\"p\">]:</span>\n        <span class=\"k\">return</span>\n    <span class=\"o\">...</span>\n\n\n<span class=\"n\">post_save</span><span class=\"o\">.</span><span class=\"n\">connect</span><span class=\"p\">(</span><span class=\"n\">my_handler</span><span class=\"p\">,</span> <span class=\"n\">sender</span><span class=\"o\">=</span><span class=\"n\">MyModel</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>D'fhéadfá maisitheoir a scríobh freisin chun an loighic seo a chumhdú:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">functools</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">wraps</span>\n\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">disable_for_loaddata</span><span class=\"p\">(</span><span class=\"n\">signal_handler</span><span class=\"p\">):</span>\n<span class=\"w\">    </span><span class=\"sd\">&quot;&quot;&quot;</span>\n<span class=\"sd\">    Decorator that turns off signal handlers when loading fixture data.</span>\n<span class=\"sd\">    &quot;&quot;&quot;</span>\n\n    <span class=\"nd\">@wraps</span><span class=\"p\">(</span><span class=\"n\">signal_handler</span><span class=\"p\">)</span>\n    <span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">wrapper</span><span class=\"p\">(</span><span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span>\n        <span class=\"k\">if</span> <span class=\"n\">kwargs</span><span class=\"p\">[</span><span class=\"s2\">&quot;raw&quot;</span><span class=\"p\">]:</span>\n            <span class=\"k\">return</span>\n        <span class=\"n\">signal_handler</span><span class=\"p\">(</span><span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">)</span>\n\n    <span class=\"k\">return</span> <span class=\"n\">wrapper</span>\n\n\n<span class=\"nd\">@disable_for_loaddata</span>\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">my_handler</span><span class=\"p\">(</span><span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span> <span class=\"o\">...</span>\n</code></pre></div>\n<p>Bí ar an eolas go ndéanfaidh an loighic seo na comharthaí a dhíchumasú aon uair a dhíshealtar daingneáin, ní hamháin le linn: djadmin: loaddata.</p>\n</section>\n<section id=\"compressed-fixtures\">\n<h2>Daingneáin chomhbh<a class=\"heading-anchor\" href=\"#compressed-fixtures\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Féadfar daingneáin a chomhbhrúite i bhformáid <code class=\"docutils literal notranslate\"><span class=\"pre\">zip</span></code>, gz`, bz2`, lz`, nó <code class=\"docutils literal notranslate\"><span class=\"pre\">xz</span></code>. Mar shampla:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>django-admin<span class=\"w\"> </span>loaddata<span class=\"w\"> </span>mydata.json\n</code></pre></div>\n<p>lorg aon cheann de mydata.json`, mydata.json.zip`, mydata.json.gz`, mydata.json.gz`, mydata.json.xz`, mydata.json.lz`, nó <code class=\"docutils literal notranslate\"><span class=\"pre\">mydata.json.xz</span></code>. Úsáidtear an chéad chomhad atá laistigh de chartlann comhbhrúite.</p>\n<p>Tabhair faoi deara má aimsítear dhá daingneán leis an ainm céanna ach cineál daingneáin difriúil (mar shampla, má aimsíodh <code class=\"docutils literal notranslate\"><span class=\"pre\">mydata.json</span></code> agus mydata.xml.gz` san eolaire daingneáin chéanna), cuirfear deireadh leis an suiteáil daingneáin, agus bainfear aon sonraí suiteáilte sa ghlao chu:djadmin: loaddata ón mbunachar sonraí.</p>\n<aside class=\"admonition-mysql-with-myisam-and-fixtures admonition\">\n<p class=\"admonition-title\">MySQL le MyISAM agus daingneáin</p>\n<p>Ní thacaíonn inneall stórála MyISAM MySQL le hidirbhearta nó srianta, mar sin má úsáideann tú MyISAM, ní gheobhaidh tú bailíochtú sonraí daingneáin, ná rolladh siar má aimsítear comhad idirbheart iolracha.</p>\n</aside>\n</section>\n<section id=\"database-specific-fixtures\">\n<h2>Daingneáin sonrach le bunachar sonraí<a class=\"heading-anchor\" href=\"#database-specific-fixtures\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Má tá tú i socrú ilbhunachar sonraí, b'fhéidir go mbeadh sonraí daingneáin agat ar mhaith leat a luchtú ar bhunachar sonraí amháin, ach ní ar bhunachar sonraí eile. Sa chás seo, is féidir leat aitheantóir bunachar sonraí a chur isteach in ainmneacha do daingneáin.</p>\n<p>Mar shampla, má tá bunachar sonraí <code class=\"docutils literal notranslate\"><span class=\"pre\">users</span></code> sainithe ag do shuíomh: DATABASES, ainmnigh an daingneán <code class=\"docutils literal notranslate\"><span class=\"pre\">mydata.users.json</span></code> nó <code class=\"docutils literal notranslate\"><span class=\"pre\">mydata.users.json.gz</span></code> agus ní luchtálfar an daingneán ach nuair a shonraíonn tú gur mhaith leat sonraí a luchtú isteach sa bhunachar sonraí <code class=\"docutils literal notranslate\"><span class=\"pre\">users</span></code>.</p>\n</section>","rootId":"fixtures","toc":[{"title":"Conas daingneán a tháirgeadh","anchor":"how-to-produce-a-fixture","children":[]},{"title":"Conas daingneán a úsáid","anchor":"how-to-use-a-fixture","children":[]},{"title":"Conas a aimsítear daingneáin","anchor":"how-fixtures-are-discovered","children":[{"title":"Ordú luchtaithe daingneo","anchor":"fixtures-loading-order","children":[]}]},{"title":"Conas a shábháil daingneáin sa bhunachar sonraí","anchor":"how-fixtures-are-saved-to-the-database","children":[]},{"title":"Daingneáin chomhbh","anchor":"compressed-fixtures","children":[]},{"title":"Daingneáin sonrach le bunachar sonraí","anchor":"database-specific-fixtures","children":[]}],"breadcrumbs":[{"docname":"topics/index","title":"Using Django","url":"/ga/5.2/topics/"},{"docname":"topics/db/index","title":"Samhlacha agus bunachair sonraí","url":"/ga/5.2/topics/db/"}],"prev":{"docname":"topics/db/instrumentation","title":"Ionstraimíocht bunachar sonraí","url":"/ga/5.2/topics/db/instrumentation/"},"next":{"docname":"topics/db/examples/index","title":"Samplaí d'úsáid API caidrimh samhail","url":"/ga/5.2/topics/db/examples/"},"formats":{"html":"/ga/5.2/topics/db/fixtures/","markdown":"/ga/5.2/topics/db/fixtures.md","json":"/ga/5.2/topics/db/fixtures.json"},"source":"https://github.com/django/django/blob/stable/5.2.x/docs/topics/db/fixtures.txt","official":"https://docs.djangoproject.com/ga/5.2/topics/db/fixtures/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}