๐ฝ Git
https://github.com/2JYK/iPark_django_backend
https://github.com/2JYK/iPark_frontend
๐ฝ Notion
https://heady-lan-a0c.notion.site/d4ff35daa2e24bc99ffe46fb3a46d309
์์ด์ด ํ๋ ์
๐ฝ user ๋ถ๋ถ ํฌ๊ฒ ๋ณด๊ธฐ
๊ธฐ๋ฅ๋ช ์ธ์
- ํต์ฌ ๊ธฐ๋ฅ : ๊ณต์ ์ฐพ๊ธฐ, ์ง๋, ์ปค๋ฎค๋ํฐ, ๋๋๋ง์ผ
- ์์ธ์ ๊ณต์์ ๊ตฌ์ญ์ ์ง์ ํ๊ฑฐ๋ ์ต์
์ ์ ํํด ์ฐพ์ ์ ์๊ณ ์ฆ๊ฒจ์ฐพ๊ธฐ๋ฅผ ํ์ฌ ๋ฐ๋ก ๋ชจ์ ๋ณผ ์ ์์
- Tag ์ ํ์ผ๋ก ์ปค๋ฎค๋ํฐ์ ๋๋๋ง์ผ์ ์ ํํด ๊ฒ์๊ธ ์กฐํ, ์์ฑ์ด ๊ฐ๋ฅ
๋ฉ์ธํ์ด์ง
- ๊ณต์ ๋๋ฌ๋ณด๊ธฐ
- ์กฐํ์ ์์๋๋ก ๊ณต์์ ๋ณด์ฌ์ค
- ์๋จ๋ฐ
- ๊ฒ์์ฐฝ์ ํตํด ํน์ ๊ณต์์ ์ฐพ๊ธฐ
- ๋ค๋น๊ฒ์ด์
์ ํตํด ํด๋น ํ์ด์ง๋ก ์ด๋
- ์ปค๋ฎค๋ํฐ ํ์ด์ง
- ๊ณ์ ๊ด๋ฆฌ ํ์ด์ง
- ํ ๊ธ
- ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๊ฐ๋๋ค์์ผ๋ก ๊ณต์ ์ ๋ ฌ
- ๊ณต์ ํด๋ฆญ์ ๊ณต์ ์์ธ ๋ด์ฉ ํ์ด์ง๋ก ์ด๋
- ๊ณต์ ๊ฒ์ ๋ฒํผ์ ๋๋ฌ ๊ณต์ ๊ฒ์ ํ์ด์ง๋ก ์ด๋ํด ์ํ๋ ์กฐ๊ฑด์ ๊ณต์์ ์ฐพ์ ์ ์์
- ์ปค๋ฎค๋ํฐ ๋ฒํผ์ ๋๋ฌ ์ปค๋ฎค๋ํฐ ํ์ด์ง๋ก ์ด๋ํ์ฌ ๊ฒ์๊ธ์ ์กฐํ,์์ฑํ ์ ์์
- ํ ๊ธ ๋ฒํผ์ ๋๋ฌ ์ํ๋ ๊ณต์์ ์ ํํ์ฌ ์์ธํ์ด์ง๋ก ์ด๋ ํ ์ ์๋ค.
- ํธํฐ์ ‘๋งจ ์๋ก’ ๋ฒํผ์ ๋๋ฌ ํ์ด์ง์ ์๋จ์ผ๋ก ์ด๋ํ ์ ์์
๊ณต์ ๊ฒ์ ํ์ด์ง
- ์ต์ ์ ์ ํํด ์ฌ์ฉ์๊ฐ ์ํ๋ ์กฐ๊ฑด์ ๊ณต์์ ๊ฒ์ํ ์ ์์
- ์คํฌ๋กค์ ์ด์ฉํด ๊ฒ์๋ ๊ณต์ ๋ชฉ๋ก์ ํ์ธ
- ํํฐ๋ฅผ ํตํด ์กฐํ์๊ณผ ์ฆ๊ฒจ์ฐพ๊ธฐ์์ด ๋ง์ ๊ณต์ ๋ฑ์ ์ฌ์ฉ์์๊ฒ ์ ์ํจ
๊ณต์ ์์ธ ๋ด์ฉ ํ์ด์ง
- ๊ณต์์ ๋ํ ์ ๋ณด๋ฅผ ํ์ธ
- ์ฆ๊ฒจ์ฐพ๊ธฐ
- ์ฆ๊ฒจ์ฐพ๊ธฐ ๋ฒํผ์ ๋๋ฌ ์ฆ๊ฒจ์ฐพ๊ธฐ ํ์ด์ง์์ ๋ชจ์๋ณผ ์ ์์
- ์ฆ๊ฒจ์ฐพ๊ธฐ ๋ฒํผ์ ๋ค์ ๋๋ฅด๋ฉด ํด์ ๋จ
- ๋๊ธ
- ์ฌ์ฉ์๊ฐ์ ํด๋น ๊ณต์์ ๋ํ ์ด์ผ๊ธฐ๋ฅผ ๋๊ธ์ ํตํด ์์ ๋กญ๊ฒ ๋๋ ์ ์์
์ฆ๊ฒจ์ฐพ๊ธฐ ํ์ด์ง
- ์ฌ์ฉ์๊ฐ ์ฆ๊ฒจ์ฐพ๊ธฐํ ๊ณต์๋ค์ ์ต์ ์์ผ๋ก ๋ณผ ์ ์์
- ์ฆ๊ฒจ์ฐพ๊ธฐ ๋ฒํผ์ ํ๋ฒ ๋ ๋๋ฆ์ผ๋ก ์ฆ๊ฒจ์ฐพ๊ธฐ๋ฅผ ํด์ ํ ์ ์์
์ปค๋ฎค๋ํฐ ํ์ด์ง
- ์ฌ์ฉ์๋ค์ด ์์ฑํ ์ ์ฒด ๊ฒ์๊ธ์ ๋ณผ ์ ์์
- ๋๋กญ๋ค์ด ๋ฒํผ์ ์ด์ฉํด ์ ์ฒด ๊ฒ์๊ธ / ์ปค๋ฎค๋ํฐ / ๋๋๋ง์ผ / ๋ด๊ฐ ์ด ๊ฒ์๊ธ์ ์ ํํด ํ์ธํ ์ ์์
- ๊ธ ์์ฑ ๋ฒํผ์ ๋๋ฌ ๊ฒ์๊ธ ์ ๋ก๋ ํ์ด์ง๋ก ์ด๋ํ ์ ์์
- ๊ฒ์์ฐฝ์ ์ด์ฉํด ๊ฒ์๊ธ์ ๊ฒ์ํ ์ ์์
- ํ์ด์ง ๋ค์ด์ ์ ์ด์ฉํด ํ์ด์ง๋ฅผ ๋๋
๊ฒ์๊ธ ์ ๋ก๋ ํ์ด์ง
- ๊ฒ์๊ธ ์์ฑ, ์
๋ก๋
- ํ๊ทธ [ ์ปค๋ฎค๋ํฐ or ๋๋๋ง์ผ ]๋ฅผ ์ ํ
- ์ฌ์ง / ์ ๋ชฉ / ๋ด์ฉ ๊ธฐ์
- ์ ๋ก๋ ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ฑ๋ก ์๋ฃ ์๋ฆผ์ด ๋จ๋ฉฐ ์ปค๋ฎค๋ํฐ ํ์ด์ง๋ก ์ด๋
- ์์ฑ๋ ๊ฒ์๊ธ์ ์ปค๋ฎค๋ํฐ ํ์ด์ง์์ ํ์ธ ๊ฐ๋ฅ
๊ณต์ ์ ๋ณด ๊ด๋ฆฌ→ admin ํ์ด์ง
- ์๋ก์ด ๊ณต์ ๋ฑ๋ก
- ๋ฑ๋ก๋ ๊ณต์ ์ ๋ณด ์์ ๋ฐ ์ญ์
๊ณ์ ๊ด๋ฆฌ ํ์ด์ง
- ๊ฐ์
์ ๋ณด ์์
- ์์ ํ๊ณ ์ ํ๋ ์ ๋ณด๋ฅผ ์์ ํ ์ ์์
- ๋น๋ฐ๋ฒํธ
- ์ด ๋ฆ / ์ด๋ฉ์ผ / ํธ๋ํฐ ๋ฒํธ / ์๋ ์์ผ
- ํ์ ํํด
- ๊ฐ์ธ์ ๋ณด ๋ฐ ์์ฑํ์๋ ๋ด์ญ ์ญ์ ๋จ์ ์๋ดํ๋ฉฐ ํํด ๋ฒํผ์ ๋๋ฌ ํ์ํํด๋ฅผ ํ ์ ์์
๋ก๊ทธ์ธ ํ์ด์ง
- ๋ก๊ทธ์ธ
- ์์ ๋ก๊ทธ์ธ ๊ณ์ ํน์ ์์ด๋๋ก ๋ก๊ทธ์ธ
- ์์ด๋ ์ฐพ๊ธฐ
- ๊ฐ์ ์ ๋ณด ํ์ธ์ ํตํด ์์ด๋ ์ฐพ๊ธฐ
- ๋น๋ฐ๋ฒํธ ์ฐพ๊ธฐ
- ๊ฐ์ ํ ์์ด๋์ ๊ฐ์ ์ ๋ณด ํ์ธ์ ํตํด ๋น๋ฐ๋ฒํธ ์ฐพ๊ธฐ
- ํ์๊ฐ์ ํ์ด์ง๋ก ์ด๋
- ๋ก๊ณ ๋ฅผ ํตํด ํํ์ด์ง๋ก ์ด๋
ํ์๊ฐ์ ํ์ด์ง
- ํ์๊ฐ์
- ์์ ๋ก๊ทธ์ธ ๊ณ์ ํน์ ๊ณ์ ์์ฑ์ผ๋ก ๊ฐํธ ๊ฐ์
- ๋ก๊ทธ์ธ ํ์ด์ง๋ก ์ด๋
- ๋ก๊ณ ๋ฅผ ํตํด ํํ์ด์ง๋ก ์ด๋
DataBase
ERD
DB
Region {
"region_id(pk)" : "Primary Key",
"region_name" : "์ง์ญ"
}
User {
"user_id(pk)" : "Primary Key",
"bookmarks(fk)" : "ManyToMany",
"username" : "์ฌ์ฉ์ ์์ด๋",
"password" : "๋น๋ฐ๋ฒํธ",
"fullname": "์ด๋ฆ",
"email" : "์ด๋ฉ์ผ",
"phone" : "ํธ๋ํฐ ๋ฒํธ",
"birthday" : "์๋
์์ผ",
"region" : "์ง์ญ",
"join_date" : "๊ฐ์
์ผ์"
}
Option {
"option_id(pk)" : "Primary Key",
"option_name" : "๊ณต์ ์ต์
์ด๋ฆ"
}
Park {
"park_id(pk)" : "Primary Key",
"option_id(fk)" : "ManyToMany",
"park_name" : "๊ณต์๋ช
",
"addr" : "๊ณต์์ฃผ์",
"zone" : "์ง์ญ",
"admintel" : "์ ํ๋ฒํธ",
"main_equip" : "์ฃผ์์์ค",
"template_url" : "๋ฐ๋ก๊ฐ๊ธฐ",
"list_content" : "๊ณต์๊ฐ์",
"image" : "์ด๋ฏธ์ง",
"longitude" : "X์ขํ(WGS84)",
"latitude" : "Y์ขํ(WGS84)",
"check_count" : "์กฐํ์",
"created_at" : "๊ณต์ ์ ๋ณด ์์ฑ์๊ฐ",
"updated_at" : "๊ณต์ ์ ๋ณด ์์ ์๊ฐ"
}
ParkComment {
"parkcomment_id(pk)" : "Primary Key",
"user_id(fk)" : "Foreign Key",
"park_id(fk)" : "Foreign Key",
"comment" : "๋๊ธ",
"created_at" : "์์ฑ ์๊ฐ",
"updated_at" : "์์ ์๊ฐ"
}
tag {
"tag_id(pk)" : "Primary Key",
"tag_name" : "ํ๊ทธ"
}
Article {
"article_id(pk)" : "Primary Key",
"user_id(fk)" : "Foreign Key",
"tag_id(fk)" : "Foreign Key",
"image" : "์ด๋ฏธ์ง",
"title" : "์ ๋ชฉ",
"content" : "๋ด์ฉ",
"check_count" : "์กฐํ์",
"created_at" : "์์ฑ ์๊ฐ",
"updated_at" : "์์ ์๊ฐ",
}
ArticleComment {
"articlecomment_id(pk)" : "Primary Key",
"user_id(fk)" : "Foreign Key",
"article_id(fk)" : "Foreign Key",
"comment" : "๋๊ธ",
"created_at" : "์์ฑ ์๊ฐ",
"updated_at" : "์์ ์๊ฐ"
}
API ๋ช ์ธ์
* app๋ณ๋ก API ์ค๊ณ -> Park / User / Community
request.response ๋ถ๋ถ์ postman API๋ฌธ์๋ก ์์ฑ > ๋งํฌ์ฒจ๋ถ
์ปจ๋ฒค์
๐ฝ Git ์ปจ๋ฒค์
๐ฝ ์ฝ๋ ์ปจ๋ฒค์
๐ฝ ๊ฐ๋ฐํ๊ฒฝ ์ปจ๋ฒค์
โญ๏ธ 2JYK ์ญํ โญ๏ธ
๊น๊ฒฝ์ > ๊ณต์ ๋ฉ์ธํ์ด์ง + ์ปค๋ฎค๋ํฐ ์์ฑํ์ด์ง
์ค์ฌ๊ธฐ > ๊ณต์ ์์ธ ํ์ด์ง + ์์
(๊ฐ์
+๋ก๊ทธ์ธ) + ๋ฐฐํฌ
์ ๋๊ทผ > ๊ฒ์ํ์ด์ง + ํ ๊ธ + ์ ์ (๊ณ์ ๊ด๋ฆฌ-ํ์๊ฐ์
-๋ก๊ทธ์ธ-์๋๋น๋ฒ์ฐพ๊ธฐ)
์ ์ฃผํ > index + footer + ์ฆ๊ฒจ์ฐพ๊ธฐ + ์ปค๋ฎค๋ํฐ ๋ฉ์ธ
7์13์ผ S.A ์์ ๋ณธ ์ ๋ก๋