[TOC]
2021년 SSAFY 2학기 특화프로젝트로
캠퍼스라는 캠핑장 추천서비스를 개발하였다.개발기간: 2021년 3월 1일 - 2021년 4월 16일
- 태그에 맞게 캠핑장을 추천해주는 Content based Filtering을 제공한다.
- 사용자별로 가장 우선순위의 캠핑장을 추천해주는 Collaborative Filtering를 제공한다.
- Front-end
openjdk 11.0.9.1,npm 6.14.10,vue/cli 4.5.19버전에서 테스트되었다. - Back-end
python 3.6.8,django 3.7.1버전에서 테스트 되었다. - We tested the code using
openjdk 11.0.9.1,npm 6.14.10,vue/cli 4.5.19. - 데이터베이스는
MySQL 8.0.22에서 작성되었다. - We created database using
MySQL 8.0.22 - AWS EC2를 이용하여 프로젝트를 서버에 배포하였다.
- We deployed project using AWS EC2.
- Data Analysis폴더 안 read me 파일 확인
캠퍼스플랫폼에서는 크게 캠핑장 추천 , 검색의 2가지 세부서비스를 제공한다.
- In this platform, users can utilize 2 services of
recommend,Search
Main Page
- 메인 페이지로는 추천태그별 캠핑장 리스트가 띄워지게 된다.
- 로그인과 회원가입을 을 통해 개인별 추천서비스를 받을 수 있고, 좋아요와 댓글을 남길 수 있다.
- 캠핑장 클릭시 Detail UI
- 태그가 아닌 일반검색으로 검색하면 해당 검색어를 포함된(이름또는 지역) 캠핑장 리스트가 출력된다.
- 태그로 검색하게 되면, 캠핑장의 태그가 해당태그인 리스트를 출력 한다.
git clone을 한 후 아래의 작업을 진행해야 프론트 서버를 실행할 수 있다.
1단계: npm 설치
frontend프로젝트 폴더에서 npm을 설치한다.
npm install
npm run serve2단계: 환경변수 설정
-
frontend폴더 내의 최상위 창에서 환경변수.env.local이라는 파일을 생성한다. -
환경변수로 관리하는 데이터는 다음과 같다.
## .env.local VUE_APP_SERVER_URL=<서버 URL> VUE_APP_MAP_API_KEY=<카카오 지도 API Javascript 키> VUE_APP_SERVER_URL_C=<크롤링 서버 URL> -
backend프로젝트 폴더에서 모듈을 설치한다.
pip install -r requirements.txt
python manage.py runserverNaming Rule
- 파일 명은
PascalCase를 따른다.- 변수 및 함수명은
snake_case를 따른다.
-
폴더 구조는
member,app,campsite로 구분한다.1. member - 회원계정 관련 2. app - 메인페이지 3. campsite - 캠핑장 추천 서비스 관련
-폴더구조는 서버 Back-end, 앱 단위 main, camp로 구분된다.
1. DB 연동
- python manage.py inspectdb (db 감지 및 model.py 코드 작성 용이)
2.DB가 변경 되었을 시
- python manage.py makemigrations
- python manage.py migrate
- 캠핑장 추천에서 사용되는 캠핑장 정보는 한국관광공사에서 제공하는 캠핑장 정보 API를 활용하였다.
- axios
- lodash
- vue bootstrap-vue bootstrap
- less less-loader
- mint-ui -S
- vue-awesome-swiper
- vuex코드를 서버에 올렸을 때 발생하는 주요 버그 및 그에 대한 해결법을 정리하였다.
:Aws에 띄운 mysql과 Django가 연결되지 않는다.
원인
- 계정에 대한 권한문제
해결방안
- 계정을 새로 생성하고, 해당 스키마에 대한 권한을 부여하여 해결했다.
아직 없습니다.
Copyright © 2021 SSAFY_SEOUL3_TEAM4_캠퍼스






