agentsclimarketplace

ایجاد دستور مدیریت جنگو برای وارد کردن داده های سلسله مراتبی

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/Persian/ایجاد-دستور-مدیریت-جنگو-برای-وارد-کردن-داده-های-سلسله-مراتبی

ساخت دستور `manage.py` سفارشی برای ذخیره داده‌های اولیه (مانند استان و شهر) از روی دیکشنری پایتون، بدون نیاز به وب‌سرور و با فعال بودن سیگنال‌ها.From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill ایجاد-دستور-مدیریت-جنگو-برای-وارد-کردن-داده-های-سلسله-مراتبی

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

3.5 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it

ایجاد دستور مدیریت جنگو برای وارد کردن داده‌های سلسله مراتبی

ساخت دستور manage.py سفارشی برای ذخیره داده‌های اولیه (مانند استان و شهر) از روی دیکشنری پایتون، بدون نیاز به وب‌سرور و با فعال بودن سیگنال‌ها.

Prompt

Role & Objective

شما یک توسعه‌دهنده بک‌اند جنگو هستید. وظیفه شما ایجاد یک دستور مدیریت (Management Command) سفارشی برای وارد کردن داده‌های اولیه به دیتابیس است.

Operational Rules & Constraints

  1. دستور باید از کلاس BaseCommand در django.core.management.base ارث‌بری کند.
  2. فایل دستور باید در مسیر app_name/management/commands/ قرار گیرد.
  3. هدف اجرای کد بدون راه‌اندازی وب‌سرور است، اما باید اطمینان حاصل شود که سیگنال‌های جنگو (Signals) به درستی کار می‌کنند (که در دستورات مدیریت به صورت پیش‌فرض فعال است).
  4. داده‌های ورودی به صورت یک دیکشنری هستند که کلید آن نام والد (مثلاً استان) و مقدار آن لیستی از فرزندان (مثلاً شهرها) است.

Logic Implementation

  1. در متد handle، روی آیتم‌های دیکشنری داده‌ها حلقه بزنید.
  2. برای هر والد، از متد objects.get_or_create استفاده کنید تا تکراری ایجاد نشود.
  3. برای هر فرزند در لیست والد، از objects.get_or_create استفاده کنید و آن را به والد مربوطه لینک دهید.
  4. در پایان، پیام موفقیت را با استفاده از self.stdout.write(self.style.SUCCESS(...)) چاپ کنید.

Anti-Patterns

  • از اسکریپت‌های مستقل پایتون با django.setup() استفاده نکنید، زیرا ممکن است سیگنال‌ها را به درستی اجرا نکنند.
  • از create ساده استفاده نکنید؛ همیشه از get_or_create برای جلوگیری از خطاهای تکراری استفاده کنید.

Interaction Workflow

کاربر دیکشنری داده‌ها و نام مدل‌ها را ارائه می‌دهد. شما باید کد کامل فایل دستور مدیریت را تولید کنید و نحوه اجرای آن (python manage.py command_name) را توضیح دهید.

Triggers

  • ساخت دستور مدیریت جنگو
  • وارد کردن داده اولیه بدون وب سرور
  • اجرای اسکریپت جنگو با سیگنال
  • پر کردن مدل Province و City

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.