Git Product home page Git Product logo

dbproject's Introduction

DBProject

Prerequisites

Installation

  1. Clone โปรเจ็กนี้ลงเครื่อง
  2. cd ไปที่โฟลเดอร์โปรเจ็ก แล้วรัน npm install เพื่อติด dependencies ที่ระบุไว้ใน package.json
  3. ก็อปปี้ไฟล์ config.sample.js เป็นชื่อ config.js และภายในไฟล์นั้น ให้แก้ username, password และ databaseName ของ MySQL

ถ้าหากมีการเปลี่ยนแปลง package.json ใดๆ กรุณารัน npm install เพื่ออัพเดท dependencies ด้วย (ถ้าให้ปลอดภัย รันทุกครั้งที่ sync หรือ pull จาก Git ไปเลย)

Database Initialization

  1. ตรวจสอบว่าไม่มี database ชื่อ dbproject อยู่
  2. รันไฟล์ SQL ใน ./tools/dbseed/tables_only.sql ใน Workbench
  3. ตรวจสอบว่ามีทั้งหมด 16 tables และไม่มีข้อมูลใดๆ อยู่ภายใน
  4. เซ็ตไฟล์ config.js (ที่อยู่ในหัวข้อ Installation ด้านบน) ให้ถูกต้อง
  5. รัน npm run seed
  6. ตรวจสอบใน Workbench อีกรอบว่ามีข้อมูลเรียบร้อยแล้ว

Running Web Server

ใช้คำสั่ง npm start จะรันตัว web server และตัว Gulp build system ให้ (ใช้ในการ build ไฟล์ .css และ .js)

ถ้าหากแก้โค้ด JavaScript ที่เป็นฝั่ง server ใดๆ เซิร์ฟเวอร์จะ recompile ตัวเองอัตโนมัติ

ถ้าหากแก้โค้ด JavaScript ที่เป็นฝั่ง client หรือไฟล์ SCSS ใดๆ Gulp จะ build ให้ใหม่อัตโนมัติ

Development Hint

  1. Routes ในระดับบนสุดอยู่ที่ไฟล์ /routes.js
  2. แต่ละ Router ย่อยจะอยู่ที่โฟลเดอร์ /routes
  3. ไฟล์ Views อยู่ที่โฟลเดอร์ /views
  4. ไฟล์ SCSS และ JS อยู่ที่ /public_src

Note: ไม่ควรแก้ของที่อยู่ในโฟลเดอร์ public ถ้าหากเป็นไฟล์จำพวก .css หรือ .js ให้สร้างไฟล์ในโฟลเดอร์ public_src แทน โดยนามสกุลไฟล์จะเป็น .scss แทน .css เมื่อรัน npm install ตัว Gulp จะก็อบไฟล์ไปลงโฟลเดอร์ public ให้เอง

Notes

Why SCSS

เราใช้ SCSS แทน CSS เนื่องจาก

  1. SCSS เป็น superset ของ CSS กล่าวคือ ทุกโค้ดที่เป็น CSS ก็เป็น SCSS ด้วย ทำให้ไม่จำเป็นต้องเรียน SCSS เพิ่มเติมถ้าหากใครไม่อยากใช้
  2. มันสามารถแก้ config ของ Bootstrap ได้ง่ายกว่า
  3. มันมีระบบตัวแปร ทำให้สามารถคุมโทนของเว็บได้ง่ายกว่า (เช่น ใช้ตัวแปรเดียวกันอ้างถึงสีเดียวกัน)

dbproject's People

Contributors

chanatipsaetia avatar jamesrak avatar kasiditi avatar microph avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.