-
05. rest framework 시작하기 (핵기초)toy_project 2022. 3. 1. 16:46728x90
mysql db에 넣어준 Isntagram Mbti 게시물들을 가져와서 api로 뿌려주자
setting.py에서 DATABASE를 장고에서 디폴트 설정된 부분을 실제 뿌려줄 데이터가 존재하는 db접속 정보로 변경하고
class board(models.Model): mbti = models.CharField(db_column='mbti', max_length=50) user_name = models.CharField(db_column='user_name', max_length=100) content_text = models.TextField(db_column='content_text', max_length=255 ) like_count = models.IntegerField(db_column='like_count',) class Meta: managed = False db_table = 't_insta_crawler'DB기반으로 models을 생성해주고
makemigrations를 한다
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module.
Did you install mysqlclient?이런 오류가 뜬다 찾아보니
M1 error- Django mysql 연동 (Did you install mysqlclient?)
역시 m1이어서 발생한 오류이다
pip install pymysql로 pymysql을 설치해주고
import pymysql pymysql.install_as_MySQLdb()setting.py 에 상기 코드를 추가해준다.
(1054, "Unknown column 't_insta_crawler.id' in 'field list'")이런 에러가뜬다
확인해보니
t_insta_crawler안에 id 칼럼이 없어서 그렇다
장고에서는 migrate하면 id를 자동으로 만들어주는데 이걸 없애도 에러가뜬다..
그것도 모르고 migrate를 init시키고 다시 하고 무슨 에러인지 몰라서 별짓 다하다가
테이블에 id 칼럼 추가 해주니까 됐다..
[{"id": null,"mbti": "intp","user_name": "mbti.epiphany","content_text": "کپشن مهم''شهودیN مثل INFJ????حسی S مثل ESTP????نکته ی مهم:ما هیچوقت کاملا شهودی یا کاملا حسی نیستیم حتی تو تستی هم که میدید به صورت درصدی مشخص میکنه پس نگید من شهودیم پس چرا فلان ویژگی حسی هارم دارم و ....????برای دیدن مطالب مووود راجع به MBTI???????????? @mbti.epiphany ????فالو کنید :)????????•••#mbti #mbtimemes #mbtipersonality #ام_بی_تی_ای#moodvideo #moodclip #moodvids #moodedits #moodedit #تیپ_شخصیتی #تایپ_شخصیتی #تکست #تکست_سنگین #تکست_مود #mood #textmood #mbti_entj #entj #درونگرا#درونگرایی #برونگرایی #برونگرا##intp #infj#infp #istp #isfj #istj #isfp•#mbti_epiphany","like_count": 222},{"id": null,"mbti": "intp","user_name": "s__cong","content_text": "다들 2022년 새복 많이받으세용????칭구들아 작년보다 두세배는 많이벌어가고 늘 건강하자 ????#intp #약속은코로나끝나고","like_count": 14},근데 이게 페북 api처럼 20개보여주고 다음 페이지로 넘어가는 기능은 없다 -> 내일 배워보자path('boardlist/<str:mbti>', views.boardView, name='boardview')@api_view(['GET']) def boardView(request, mbti): boards = board.objects.filter(mbti=mbti) serializer = BoardSerializer(boards, many=True) return Response(serializer.data)Model에 filter기능으로 칼럼에 조회하고 싶은 Mbti를 넣으면
해당 mbti칼럼에 조회한 mbti( ex intp esfj )들에 해당되는 칼럼들이 나온다
728x90'toy_project' 카테고리의 다른 글
07. 엘라서치 조회해보기2 (0) 2022.04.19 06. 엘라스틱 서치 조회해보기 (0) 2022.04.11 04. DRF로 웹 만들어보기 : 기획 (0) 2022.02.25 03. docker 사용해보기 (0) 2022.02.25 02. Django 간단한 로그인 페이지 구현 (0) 2022.02.21