رفتن به مطلب
جامعهٔ برنامه‌نویسان مُدرن ایران

پست های پیشنهاد شده

سلام.
با توجه به اینکه هر چیزی که در جنگو میسازید یک app محسوب میشه و جنگو قابلیت بسیار خوبی برای به انتشار دادن app های خودتون به صورت پکیج(package) میدهد.😁

در djangopackages  میتوانید لیستی از آنهارا مشاهده و یا استفاده بکنید.

توسعه ی پکیج جنگو

در مرحله ی اول پیشنهاد مستندات رسمی جنگو میگوید اول اسم برنامه ی خود عبارت django- را بگذارید.

به عنوان مثال اگر برنامه ی شما اسمی مثل todo  باشد اسم به صورت django-todo در می آید.

 

داکیومنت

در مرحله ی دوم شما باید برای پکیج خودتون یک راهنما ایجاد بکنید.

معمولا در پوشه ی پکیج فایلی به نام README.rst ایجاد میکنند و راهنمارا داخل آن مینویسند.

برای مثال برای برنامه ی ما به این گونه میشود :

=====
ToDo
=====

ToDo is a Django app to conduct Web-based Todo. For each task,
jobs can choose a time limit or done it when you want.

Detailed documentation is in the "docs" directory.

Quick start
-----------

1. Add "todo" to your INSTALLED_APPS setting like this::

    INSTALLED_APPS = [
        ...
        'todo',
    ]

2. Include the todo URLconf in your project urls.py like this::

    path('todo/', include('todo.urls')),

3. Run `python manage.py migrate` to create the polls models.

4. Visit http://127.0.0.1:8000/todo/ to add and finish your todos.

البته همانطور که در متن مشاهده میکنید مستندات بیشتر راجب پکیج شما در پوشه ی docs قرار داده میشوند.

 

لایسنس

در این بخش به بحث خوب لایسنس میرسیم😆

شما در این مسیر باید محتویات لایسنس خود رو قرار بدید:

django-todo/LICENSE

بسیاری از پکیج های جنگو تحت لایسنس BSD هستند ولی شما آزادید تا هر چیزی را انتخاب بکنید.

 

setup

در این مرحله شما دو فایل setup.cfg و setup.py میسازید تا برنامه شما بیلد و برای نصب آماده شود.

آموزش این دو از بحث این مقاله فراتر میرود ولی میتونید به این لینک برای یاد گیری  و مطالعه بیشتر مراجعه کنید.

در مثال ما فایل setup.cfg بدین گونه میشود.

[metadata]
name = django-todo
version = 0.1
description = A Django app to conduct Web-based todo.
long_description = file: README.rst
url = https://www.example.com/
author = Your Name
author_email = yourname@example.com
license = BSD-3-Clause  # Example license
classifiers =
    Environment :: Web Environment
    Framework :: Django
    Framework :: Django :: X.Y  # Replace "X.Y" as appropriate
    Intended Audience :: Developers
    License :: OSI Approved :: BSD License
    Operating System :: OS Independent
    Programming Language :: Python
    Programming Language :: Python :: 3
    Programming Language :: Python :: 3 :: Only
    Programming Language :: Python :: 3.6
    Programming Language :: Python :: 3.7
    Programming Language :: Python :: 3.8
    Topic :: Internet :: WWW/HTTP
    Topic :: Internet :: WWW/HTTP :: Dynamic Content

[options]
include_package_data = true
packages = find:

و قاعدتا فایل setup.py ما بدین شکل میشود:

from setuptools import setup

setup()

و مراحلی بعدی وجود دارد که اختیاری است مثل اضافه کردن فایل MANIFEST.in برای استفاده کردن از فایل های اضافه و ... .

 

خوب حالا برای اجرای setup.py . بیلد گرفتن از پروژمون از دستور زیر استفاده میکنیم:

python manage.py sdist

و فایل با پسوند tar.xz ایجاد میشود.

تبریک میگم شما پکیج جنگوی خود رو ساختید.🤩

 

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو ملحق شوید

شما همین الآن می‌توانید مطلبی را ارسال و بعداً ثبت‌نام کنید. اگر حساب کاربری دارید، و با حساب کاربری خود مطلب ارسال کنید.
نکته: مطلب شما قبل از انتشار نیاز به بازبینی توسط میانجی‌گر‌ها دارد.

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از ۷۵ اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


  • کاربران آنلاین در این صفحه   0 کاربر

    هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.

×
×
  • جدید...