글쓴이인 나는
비교하기위해서 비교 할 리스트 값을 서버쪽에 저장하게 되었다.
이런 경우에는 리스트 값을 추가/삭제/수정하는 경우에는 서버를 다시
deploy이 해야 되기 때문에 배포하는 경우 매번 업데이트를 해야된다.
이렇게 되면 이용자들은 매번 불편하게 업데이트를 해야된다. 이런 문제를 줄이고자
변동성이 큰 코드들을 DB에 저장해주면 된다.
나는 MySQL을 사용하기 있으니 MySQL에 새로운 DB를 만들어보자
나는 lables 라는 테이블에 문제가 있는 사물 이름만 넣어놓았다.
새로운 값을 넣어준다.
# 6번부터는 새로운 DB와 연결하는 것이다
내가 만든 리스트를 가져오는 코드이다.
try :
# 1. DB 에 연결
connection = get_connection()
# 2. 쿼리문 만들고
query = '''insert into scooter
(user_id,img_url)
values
(%s,%s);'''
# 파이썬에서, 튜플만들때, 데이터가 1개인 경우에는 콤마를 꼭
# 써준다.
record = (user_id,Config.S3_LOCATION + filename)
# 3. 커넥션으로부터 커서를 가져온다.
cursor = connection.cursor()
# 4. 쿼리문을 커서에 넣어서 실행한다.
cursor.execute(query, record)
# 5. 커넥션을 커밋한다.=> 디비에 영구적으로 반영하라는 뜻.
connection.commit()
# 6. 사진안에 있으면 안되는 이미지 이름이 있는 DB를 가져온다.
query = '''select name from lables;'''
# 7. 커넥션으로부터 커서를 가져온다.
cursor = connection.cursor()
# 8. 쿼리문을 커서에 넣어서 실행한다.
cursor.execute(query)
# select 문은 아래 내용이 필요하다.
record_list = cursor.fetchall()
print(record_list)
except Exception as e:
print('Error ', e)
# 6. username이나 email이 이미 DB에 있으면,
return {'error' : '포스팅 에러입니다.'} , HTTPStatus.BAD_REQUEST
finally :
if connection.is_connected():
cursor.close()
connection.close()
print('MySQL connection is closed')
return record_list
포스트맨으로 돌려보니 리스트에 담겨서 나왔다