วันเสาร์ที่ 18 มีนาคม พ.ศ. 2560

บัญชีรายรับรายจ่าย : Tutorial 1

        1.เริ่มแรก เราต้องมี django ก่อน เพราะ tutorial ต่อไปนี้ใช้ django เป็น framework และสาเหตุ
    ที่ใช้คือ ใช้เวลาน้อย, ใช้ code น้อย, ง่ายต่อการพัฒนา และปลอดภัย ต่อมา เราต้องสร้างโปร
    เจคขึ้นมาก่อน โดยใช้คำสั่ง ลงใน command line จาก คำสั่งด้านล่าง จะเป็นการสร้าง โปรเจค
    ที่ชื่อ tutoProject

django-admin startproject tutoProject

    ซึ่งเราจะได้ เป็น folder แบบนี้
            tutoProject
                - manage.py
                - tutoProject
                      - __init__.py
                      - settings.py
                      - urls.py
                      - wsgi.py

        2.ต่อมา เราจึงจะสร้าง เป็น app โดยการใช้คำสั่ง

python3 manage.py startapp ManMon

        จะเป็นการสร้างแอพที่ชื่อ ManMon (ในส่วนนี้แล้วแต่คนตั้งนะครับ) จะได้เป็นไฟล์ตามนี้
          ManMon
              - __init__.py
              - apps.py
              - admin.py
              - model.py
              - test.py
              - view.py
              - migration
                    - __init__.py

    3. ในไฟล์ view.py นั้นจะเป็นส่วนที่เอาไว้เก็บ method ทั้งหมดที่เราจะใช้ใน appplication เพราะ
    ฉะนั้น method แรกของเรานั่นคือ callMainPage 
        from django.shortcuts import render        from django.http import HttpResponse        def callMainPage(request):            return HttpResponse("Hello, this is ManMon app")
    4.หลังจากนั้น เราก็เพิ่ม ManMon/url.py แล้วใส่โค้ดด้านล่าง

from django.conf.urls import url from . import views app_name = 'ManMon' urlpatterns = [                       url(r'^$', views.callMainPage, name="callMainPage"), ]
        เพื่อให้เป็นการเรียกใช้ หน้าแรกของ app ตาม pattern regular expression และเรียกใช้ method
    นั้นๆทดสอบการแสดงหน้าเว็บโดยใช้

     python3 manage.py runserver

        จะได้ขึ้นเป็นหน้าที่บอกว่า 
        Hello, this is ManMon app


    5.จากนั้นเราก็เข้าไปใน tutoProject/ManMon/model.py เพื่อสร้าง ส่วนที่ไว้เพื่อเก็บข้อมูล ดังนี้
class Account(models.Model):    note = models.CharField(max_length=200)    money = models.FloatField(default=0)    type_note = models.CharField(max_length=200, default='salary')    
pub_date = models.DateTimeField('date published')   
def __str__(self):           
    return self.pub_date    
def __str__(self):            
    return self.type_note    
def __flo__(self):           
    return self.money    
def __str__(self):               return self.note
class TypeIncome(models.Model):
    type_income = models.CharField(max_length=200)
    def __str__(self):
    return self.type_income
class TypePayment(models.Model):    type_payment = models.CharField(max_length=200)    def __str__(self):        return self.type_payment 
        Account - ใช้เก็บข้อมูลรายรับและรายจ่ายของผู้ใช้ ซึ่งจะมี attribute ดังนี้
                         - note = ใช้เก็บรายละเอียดของรายการนั้น(string)
                         - money = ใช้เก็บค่าจำนวนเงินของรายการ(float)
                         - type_note = ใช้เก็บประเภทของรายการ(string)
                         - pub_date = ใช้เก็บเวลาและวันที่(string)

        TypeIncome - ใช้เก็บประเภทรายรับมี attribute ดังนี้
                         - type_income = ใช้เก็บประเภทของรายรับ(string)

        TypePayment - ใช้เก็บประเภทของรายจ่ายมี attribute ดังนี้
                         - type_payment = ใช้เก็บประเภทของรายจ่าย(string)

    5.เราจะต้องบอกกับ โปรเจคหลักว่า เรามี แอพนี้แล้ว โดยที่มันจะไปอ้างอิงเอา class จากใน 
    application อย่างแรก เราจะเข้าไปในไฟล์ tutoProject/tutoProject/settings.py จากนั้น เราจึงจะ
    เจอกับบรรทัดที่เขียนว่า  INSTALLED_APPS แล้วจึงจะเพิ่มโค้ดด้านล่างลงไป
     'ManMon.apps.ManMon',

        จากนั้นก็ใช้คำสั่ง
         python3 manage.py makemigrations ManMon         python3 manage.py sqlmigrate ManMon 0001         python3 manage.py migrate    
        เพื่อที่จะอัพเดตของมูลใน database ว่ามีอะไรใน model.py ที่เปลี่ยนไปบ้าง

    5. ในขั้นตอนนี้ เราจะมาทดลอง เก็บข้อมูล 
        อย่างแรก เรามาเปิด API ใน Django โดยใช้คำสั่ง 

python3 manage.py shell

        ต่อมาก็

>>> from polls.models import Account,TypeIncome, TypePayment           >>> from django.utils import timezone 
>>> ac = Account(note = "ได้เงิน", money = 100, type_note =   
                "saving", pub_date=timezone.now()) 
>>> ti = TypeIncome(type_income = "saving")>>> ti.save()
>>> tp = TypePayment(type_payment = "food")
>>> tp.save()
        ในขั้นตอนต่อไป เราจะได้เห็นข้อมูลที่เราใส่ลงไป
  
    6.เราจำเป็นที่จะต้องมี admin ที่จะจัดการกับข้อมูลที่เข้ามา จะสามารถสร้าง admin ได้โดย

python manage.py createsuperuser

         จากนั้น จะขึ้นให้ใส่ชื่อ, email และรหัส เมื่อเสร็จเราจึงจะสามารถเข้าไปหน้าที่อยู่ของ admin 
    ได้ตาม ที่อยู่ /admin/ พอเข้าไปเราก็จะเห็น

        Account
        TypeIncome
        TypePayment

        ซึ่งแต่ละตัวก็จะมีข้อมูลที่เราใส่ไป
       

 



ไม่มีความคิดเห็น:

แสดงความคิดเห็น