from xml.etree.ElementInclude import include # ← این باعث دردسر شده
شما با این دستور، تابع include مربوط به کتابخانهٔ xml.etree را وارد کردهاید و در نتیجه وقتی در urlpatterns مینویسید include('blog.urls')، به-جای تابع django.urls.include (که برای آدرسدهی استفاده میشود) همان تابع XML صدا زده میشود و خطای AttributeError: 'str' object has no attribute 'tag' ایجاد میشود.
راهحل
خط وارد کردن تابع XML را پاک کنید یا اگر واقعاً به آن نیاز دارید، آن را با نام دیگری وارد کنید:
# اگر لازم بود
from xml.etree.ElementInclude import include as xml_include
سپس تابع درست را از Django وارد کنید:
from django.urls import path, include
کد نهایی فایل academy/urls.py باید چیزی شبیه این باشد:
from django.contrib import admin
from django.urls import path, include # ← include درست همین است
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('blog.urls')), # حالا بدون خطا کار میکند
]
حالا سرور را دوباره اجرا کنید (python manage.py runserver) و مسیر /blog/ بدون خطا لود خواهد شد. موفق باشید