#AsuultSambar :

ASUULT.NET - МОНГОЛ УЛС МАНДАН БАДРАГ!
It is currently Nov.14.18 10:12 pm

All times are UTC+09:00




Post new topic  Reply to topic  [ 1 post ] 
Author Message
PostPosted: Jun.26.18 6:36 pm 
Offline
Өсөх Ирээдvйтэй Гишvvн
Өсөх Ирээдvйтэй Гишvvн
User avatar

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

Виндөвс ҮС хэрэглэгчид https://www.youtube.com/watch?v=OOUYcZG8bbQ зааврын дагуу тохируулаарай.
Одоо django суулгана. Linux, OSX хэрэглэгчид terminal, Виндөвс хэрэглэгчид CMD нээгээд
Code:
pip install django
командыг бичиж джанго хамгийн сүүлийн хувилбарыг татаж суулгана.
Суусан бол terminal/CMD дээр
Code:
django-admin startproject demo_project
гэж бичээд шинэ төсөл үүсгэнэ.
Үүсгэсэн project-ын хавтсанд доорхи файлууд үүснэ.:
Code:
* manage.py
* demo_project/
 — __init__.py
 — settings.py
 — urls.py
 — wsgi.py

Одоо Django server ажиллуулж үзэе. terminal дээр доорхийг бичээд ажиллуулая.
Code:
python manage.py migrate
python manage.py runserver

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

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

Code:
python manage.py startapp
blogингэснээр төслийн хавтсанд нэмж “blog” хавтас үүснэ.
Code:
* blog/
 — `admin.py`
 — `apps.py`
 — `__init__.py`
 — `models.py`
 — `tests.py`
 — `views.py`

6. Үүсгэсэн аппликейшныг төсөлийн апп гэж бүртгэх хэрэгтэй. demo_project/demo_project/settings.pyфайлыг нээгээд INSTALLED_APPSжагсаалтын хамгийн доор нь бичиж оруулна.

Code:
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 бичнэ.

Code:
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

Үүний дараа уг моделийг өгөгдлийн санруу доорхийг бичиж бичилт хийх хэрэгтэй.

Code:
python manage.py makemigrations
python manage.py migrate

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

Code:
python manage.py runserver`

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

Code:
# 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` файлыг нээж доорхийг бичнэ.
Code:
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-ийн утгыг доорхи шиг болгон өөрчлөх хэрэгтэй.
Code:
TEMPLATES = [
 …
 'DIRS': ['templates'],
 …
]

дараа нь demo_project хавтас дотор templates нэртэй хавтас үүсгэнэ. Дотор нь index.html файл үүсгэж доорхи кодыг хуулж тавина.

Code:
{% 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 дотор бичиж өгнө.

Code:
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


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 1 post ] 

All times are UTC+09:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  

Copyright Asuult.NET © 2000-2015.
Administrative Contact: Khundaga Khurelbaatar [hundaga@hotmail.com]
Tel: 1-888-303-4927, Fax: 1-888-406-2264.
Powered by phpBB © 2000-2015 phpBB Group. Powered by phpBB® Forum Software © phpBB Limited