Django цуврал хичээл.

Монгол Хэрэглэгчидэд Зориулсан Программчлал, Программ хангамжууд...
Монгол бичгээр бичдэг Notepad
Латинаар галиглаад бичингүүт шууд криллрүү хөрвүүлдэг гарын драйвер

Зохицуулагчид: Computer software, Computer Hardware

Хэрэглэгчийн аватар
L0GiX
Өсөх Ирээдvйтэй Гишvvн
Өсөх Ирээдvйтэй Гишvvн
Бичлэгүүд: 7
Нэгдсэн: 4-р сар.08.12 2:21 am

Django цуврал хичээл.

Бичлэг Бичсэн L0GiX »

Python вэб фрэймворк болохоор нэн түрүүнд python суусан байх шаардлагатай. OS X, Linux ҮС -д анхнаасаа суучихсан байдаг болохоор суулгах шаардлагагүй(Гэхдээ өөр хувилбар хэрэгтэй бол суулгаж болно.) Виндөвс ҮС -д https://www.python.org/downloads татаж суулгаад path тохируулах хэрэгтэй.

Виндөвс ҮС хэрэглэгчид https://www.youtube.com/watch?v=OOUYcZG8bbQ зааврын дагуу тохируулаарай.
Одоо django суулгана. Linux, OSX хэрэглэгчид terminal, Виндөвс хэрэглэгчид CMD нээгээд

Код: Бүгдийг сонгох

pip install django
командыг бичиж джанго хамгийн сүүлийн хувилбарыг татаж суулгана.
Суусан бол terminal/CMD дээр

Код: Бүгдийг сонгох

django-admin startproject demo_project
гэж бичээд шинэ төсөл үүсгэнэ.
Үүсгэсэн project-ын хавтсанд доорхи файлууд үүснэ.:

Код: Бүгдийг сонгох

* manage.py
* demo_project/
 — __init__.py
 — settings.py
 — urls.py
 — wsgi.py
Одоо Django server ажиллуулж үзэе. terminal дээр доорхийг бичээд ажиллуулая.

Код: Бүгдийг сонгох

python manage.py migrate
python manage.py runserver
Төслийн хавтас дотроо орж дээрхи командыг бичих ёстой шүү. Хэрвээ зөв суулгасан, төслөө үүсгэж чадсан бол Django-ын default “it worked page” гарч ирэх ёстой.
Энд migrate командаар өгөгдлийн санг үүсгэнэ. Мөн ерөнхий table-ууд үүсгэнэ django нь default утгаараа sqlite3 -ыг өгөгдлийн сан болгон ашигладаг, дараа нь серверийг ажиллуулж байна.

5. Ингээд дараагийн алхам нь аппликейшн үүсгэх хэрэгтэй. Манай нөхцөлд блог гэж үүсгэе. /мөн л төслийн хавтас дотроо доорхи командыг бичнэ./

Код: Бүгдийг сонгох

python manage.py startapp
blogингэснээр төслийн хавтсанд нэмж “blog” хавтас үүснэ.

Код: Бүгдийг сонгох

* blog/
 — `admin.py`
 — `apps.py`
 — `__init__.py`
 — `models.py`
 — `tests.py`
 — `views.py`
6. Үүсгэсэн аппликейшныг төсөлийн апп гэж бүртгэх хэрэгтэй. demo_project/demo_project/settings.pyфайлыг нээгээд INSTALLED_APPSжагсаалтын хамгийн доор нь бичиж оруулна.

Код: Бүгдийг сонгох

INSTALLED_APPS = [
 ‘django.contrib.admin’,
 ‘django.contrib.auth’,
 ‘django.contrib.contenttypes’,
 ‘django.contrib.sessions’,
 ‘django.contrib.messages’,
 ‘django.contrib.staticfiles’,
 ‘blog’, # үүсгэсэн блог аппликейшныг бүртгэх
]
7. blog/models.py дотор модель буюу өгөгдлийн санд үүсэх table бичнэ.

Код: Бүгдийг сонгох

from django.db import models
class Blog(models.Model):
    title = models.CharField(max_length=50, null=True)
    body = models.TextField()
    author = models.CharField(max_length=50, null=True)
 
    def __unicode__(self):
        return self.title
Үүний дараа уг моделийг өгөгдлийн санруу доорхийг бичиж бичилт хийх хэрэгтэй.

Код: Бүгдийг сонгох

python manage.py makemigrations
python manage.py migrate
8. Django дээрхи нэг гоё зүйл нь өөрөө admin panel -тэй ирдэг. Admin panel -руу нэвтрэхийн тулд terminal дээр доорх командыг бичиж админ эрхтэй хэрэглэгч үүсгэнэ. python manage.py createsuperuser /нэвтрэх нэр, имэйл, нууц үг асууна./
9. Дахин Django server ажиллуулж үзэе. Тerminal дээр доорхийг бичээд ажиллуулая.

Код: Бүгдийг сонгох

python manage.py runserver`
гээд интернет хөтөч дээр localhost:8000/admin хандаж өмнө үүсгэсэн нэр, нууц үгээр нэвтэрч орно.
10. Бидний үүсгэсэн блог(аппликейшн) хараахан харагдахгүй байгаа. Харагддаг болговол `blog/admin.py` дотор доорхийг бичээд хадгалаад **refresh/reload** дарна:

Код: Бүгдийг сонгох

# demo_project/blog/admin.py
from django.contrib import admin
from models import Blog # үүсгэсэн Blog модэлийг импорт хийнэ.
admin.site.register(Blog)
11. Admin хэсэгтэй болчихсон учраас хүсвэл шинээр нийтлэл оруулж болно.
12. Харин одоо оруулсан нийтлэлээ харуулдаг болгоё. Үүний тулд `blog/views.py` файлыг нээж доорхийг бичнэ.

Код: Бүгдийг сонгох

from django.shortcuts import render
from models import Blog
def all_blog(request):
    blogs = Blog.objects.all()
    return render(request, ‘index.html’, {‘blogs’: blogs})
Энд django -ын render функцийг дуудаж байна, дараа нь үүсгэсэн Blog моделийг оруулж ирнэ. all_blog нэртэй функц үүсгэнэ, `blogs` хувьсагчид бүх Blog нийтлэлийг оноож өгнө, дараа нь үүнийг index.html template руу blogs хувьсагчаар дамжуулан render хийж байна.
13. Одоо дээр дурьдагдсан index.html template -ыг хаанаас олох хэрэгтэйг нь зааж өгөх хэрэгтэй. settings.py доторх TEMPLATES хэсгийн DIRS-ийн утгыг доорхи шиг болгон өөрчлөх хэрэгтэй.

Код: Бүгдийг сонгох

TEMPLATES = [
 …
 'DIRS': ['templates'],
 …
]
дараа нь demo_project хавтас дотор templates нэртэй хавтас үүсгэнэ. Дотор нь index.html файл үүсгэж доорхи кодыг хуулж тавина.

Код: Бүгдийг сонгох

{% for blog in blogs %}
 {{blog.title}}
 {{blog.body}}
 <hr>
{% endfor %}
Энд template дээр ирсэн `blogs` хувьсагчийг давталт ашиглан iterate хийгээд blog тус бүрийн `title`, `body` утгуудыг авч байна.

14. Одоо url тохируулах шаардлагатай. demo_project/demo_project/urls.py файлыг нээж urlpatterns list дотор бичиж өгнө.

Код: Бүгдийг сонгох

url(r’^$’, ‘blog.views.all_blog’, name=”all_blog”),
15. Ингээд эцэст нь terminal нээж сервер ээ ажиллуулаад python manage.py runserver localhost:8000 хандаж үзэхэд нийт блогууд маань харагдах болно.

Хэрэгтэй гэж үзэн https://github.com/Zorig/django-demo_project дээр уг төслийн кодыг оруулсан байгаа.

Үргэлжлэл хичээлийг эндээс үзнэ үү. https://medium.com/limitx/django-001-bfe177821859
~Regards:
Zo®iG
Хэрэглэгчийн аватар
keygenme
Хаанчлагч Гишvvн
Хаанчлагч Гишvvн
Бичлэгүүд: 1101
Нэгдсэн: 12-р сар.19.08 2:16 pm
Байршил: Not found...
Contact:

Re: Django цуврал хичээл.

Бичлэг Бичсэн keygenme »

Энэ хайран хичээл ингээд зогсчээ дээ.
Эзэн нь уншвал үргэлжлүүлээрэй. Фэйсбүүкийн хог ухсанаас л дээр :bigthumpup:
Идэвхгүй байгааг минь уучлагтун
Allergic Jet
Гал Дөл Гишvvн
Гал Дөл Гишvvн
Бичлэгүүд: 1491
Нэгдсэн: 1-р сар.20.14 11:50 am

Re: Django цуврал хичээл.

Бичлэг Бичсэн Allergic Jet »

Яасан гоё хичээл бэ цаашаа яасан бэ
Сэтгэгдэл хариулах

“Монгол Программчлал - Монголжихуй” руу буцах