장고 - 해당 테이블 없음: 주.auth_user__old
공식 장고 문서의 첫 번째 앱 튜토리얼을 팔로우하다가 관리 페이지를 통해 일부 변경 사항을 저장하려고 할 때 이 오류가 발생했습니다.저는 그것에 대해 조사를 좀 했지만, DB 마이그레이션과 같은 가능한 해결책을 찾을 수 없었습니다.제 코드의 구체적인 부분을 보고 싶으시면 말씀해 주세요.
다음은 오류입니다.
/admin/polls/question/1/change/main에서 작동 오류가 발생했습니다.auth_user__old 요청 방법: POST 요청 URL: http://127.0.0.1:8000/admin/polls/question/1/change/ 장고 버전: 2.1.4 예외 유형: 작동 오류 예외 값: 해당 테이블 없음: main.auth_user__old 예외 위치: /Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/db/backends/sqlite3/base.py in execute 실행, 라인 296 Python 실행 파일: /Users/gioravante/Projects/app/ta_env/b/bin/python3 Python3.1 Python3 Python3.1 Python3
['/Users/gfioravante/Projects/test_app/test_app', '/usr/local/Cellar/python/3.7.1/python37.zip', '/usr/local/cellar/local/cellar/frameworks/Python/3.1.1/3.1/3.1.pypypypypypypypy/pypypy//py/py/py/py 시간: '/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages'] 파일: 16:00 2018년 12월 5일 16:00 +00 00분 16:00 + 00분
그리고 추적:
환경:
요청 방법 : POST 요청 URL : http://127.0.0.1:8000/admin/polls/question/1/change/
장고 버전: 2.1.4 파이썬 버전: 3.7.1 설치된 애플리케이션: ['polls.apps.PollsConfig', 'django.contrib.admin', 'django.contrib'입니다.auth', 'django.message.content types', 'django.message'.sessions', 'django.contrib.messages', 'django.contrib.static files'] 설치된 미들웨어: ['django.middleware.보안.보안 미들웨어', 'django.contribute'.세션. 미들웨어.세션 미들웨어', 'django.middleware.common'입니다.공용 미들웨어', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.인증 미들웨어AuthenticationMiddleware', 'django.contrib.messages.middleware'입니다.MessageMiddleware', 'django.middleware.clickjacking.XFrame 옵션 미들웨어']
추적:
_dll 85.return self.dll의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py " 파일을 참조하십시오.실행(sql, 매개 변수)
파일 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/sqlite3/base.py "을 실행합니다. 데이터베이스를 반환합니다.Cursor.execute(자체, 쿼리, 매개 변수)
위의 예외(해당 테이블 없음: main).auth_user__old)가 다음 예외의 직접적인 원인이었습니다.
내부 34의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/core/handlers/exception.py " 파일. 응답 = get_response(요청)
_get_response 126. response = self.process_by_middleware(e, 요청)의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/core/handlers/base.py " 파일
파일 _get_response 124.의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/core/handlers/base.py ". respon = lapd_callback(요청, *callback_args, *callback_kargs), *carg)
래퍼 604의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py " 파일. self.admin_site.admin_view(view)(*args, *kwargs)를 반환합니다.
_view 142. response = view_func (요청, *args, **kwargs)의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/utils/decorators.py " 파일
_view_func 44. response = view_func (요청, *Args, **kwargs)의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-python3.7/dango/vices/views/decorators/cache.py " 파일
내부 223의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/sites.py " 파일. 보기(요청, *args, *wargs)
change_view 1640의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py " 파일. change self.view(요청, object_id, form_url, extra_d_m)
_bound 45. returnbound_contargs, **kwargs의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/utils/decorators.py " 파일
_view 142. response = view_func (요청, *args, **kwargs)의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/utils/decorators.py " 파일
changeform_view 1525의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py " 파일을 사용하여 자동으로 반환합니다._changeform_view(요청, object_id, form_url, extra_view)
_changeform_view 1571. self.log_change의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py " 파일(요청, 새_객체, 변경_다운로드)
log_change 826. change_gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/options.py "의 "/Users/gfioravante/Projects/python3." 파일,
log_action 35. change_projects의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/contrib/admin/models.py " 파일. change_properties=change_projects,
manager_dll 82. return getattrr(self.get_queryset(이름)(*인수, **인수)의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-python3.7/django/db/models/manager.py " 파일
"/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/query.py " 파일을 413.obj.save(force_insert=True, =self.db 사용)로 생성합니다.
"/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py " 파일을 저장합니다. force_update=fields=update_fields)
save_base 748. 업데이트된 = self의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py " 파일._save_table(raw, cls, force_insert, force_update, 사용, update_fields)
_save_table 831. result = self의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py " 파일._do_insert(cls._base_manager, 사용, 필드, update_message, raw)
_do_insert 869. = using, raw= raw를 사용하는 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/base.py " 파일
manager_dll 82. return getattrr(self.get_queryset(이름)(*인수, **인수)의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-python3.7/django/db/models/manager.py " 파일
_insert 1136. return query.get_models(=사용)의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/query.py " 파일.execute_sql(return_id)
execute_sql 1289. 커서의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/models/sql/compiler.py " 파일.실행(sql, 매개 변수)
파일 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py "을 실행합니다. super execute(sql, params)을 반환합니다.
68. 실행 시 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py " 파일이 자동으로 반환됩니다._sql_with_sql_sql(sql, params, many=False, executor=self)._filename)
파일 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py " with_dlluspers 77. 실행자(sql, params, many, context)를 반환합니다.
_dll 85.return self.dll의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py " 파일을 참조하십시오.실행(sql, 매개 변수)
89번 출구의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/utils.py " 파일. dj_exc_value를 올립니다.exc_value에서 _back(back)을 반환합니다.
_dll 85.return self.dll의 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/utils.py " 파일을 참조하십시오.실행(sql, 매개 변수)
파일 "/Users/gfioravante/Projects/test_app/ta_env/lib/python3.7/site-packages/django/db/backends/sqlite3/base.py "을 실행합니다. 데이터베이스를 반환합니다.Cursor.execute(자체, 쿼리, 매개 변수)
예외 유형: /admin/polls/question/1/change/예외 값: 해당 테이블 없음: main.auth_user__old
다음 단계를 유지하여 이 문제를 쉽게 해결하십시오.
- 2 (이다루는 ) django 전버 2.1.5 이지유문 (영어: keep django version 2.1.5
pip install django==2.1.5
- SQLite 데이터베이스 삭제
- 다시레션
python manage.py makemigrations
그리고 나서.python manage.py migrate
- 합니다.
python manage.py runserver
알았어!
제가 방금 이것을 발견했는데, https://code.djangoproject.com/ticket/29182 과 관련이 있는 것 같습니다.지금은 SQLite 버전을 2.6 이전 버전(예: 2.5.1)으로 다운그레이드하면 됩니다.
방금 이렇게 하면 문제가 해결됩니다.
pip install Django --upgrade
그러면:
python manage.py migrate
python manage.py makemigrations app
python manage.py migrate
이 문제를 해결하기 위해 제가 한 일은 다음과 같습니다.
하여 상가환이여설을 합니다.
django@2.1.7
pip install django==2.1.7
를 합니다.
db.sqlite3
파일을 루트 폴더에 저장합니다.- 새항만을 만듭니다.
db.sqlite3
루트 폴더에 있습니다. 마이그레이션 다시 실행:
python3 manage.py makemigrations python3 manage.py migrate
이제 제대로 작동할 겁니다.
이 문제는 수정된 동작으로 인해 발생합니다.ALTER TABLE RENAME
SQLite 3.26.0의 문장(호환성 참고 참조).그들은 또한 소개했습니다.PRAGMA legacy_alter_table = ON
이전 버전과의 호환성을 유지하기 위한 명령문입니다.다가오는 Django 릴리스 2.1.5에서는 이전에 언급한 문장을 핫픽스로 사용합니다.2019년 1월 1일 예정입니다.
django/db/backends/sqlite3 폴더로 이동합니다.
schema.py
을 다른 합니다.
텍스트 편집기에서 원본 schema.py 열기
거기서 당신은 다음과 같은 코드 조각을 볼 수 있습니다.
def __enter__(self):
# Some SQLite schema alterations need foreign key constraints to be
# disabled. Enforce it here for the duration of the schema edition.
if not self.connection.disable_constraint_checking():
raise NotSupportedError(
'SQLite schema editor cannot be used while foreign key '
'constraint checks are enabled. Make sure to disable them '
'before entering a transaction.atomic() context because '
'SQLite3 does not support disabling them in the middle of '
'a multi-statement transaction.'
)
self.connection.cursor().execute('PRAGMA legacy_alter_table = ON')
return super().__enter__()
코멘트를 달아 다음 코드 스니펫을 붙여넣습니다.
def __enter__(self):
# Some SQLite schema alterations need foreign key constraints to be
# disabled. Enforce it here for the duration of the transaction.
self.connection.disable_constraint_checking()
self.connection.cursor().execute('PRAGMA legacy_alter_table = ON')
return super().__enter__()
이것은 저에게 효과가 있었습니다.(schema.py 의 백업은 작업이 잘못될 경우를 대비한 것입니다; D )
더 많은 정보를 위하여
먼저 서버를 중지하고 db.sqlite3를 삭제합니다.
그런 다음 다음을 실행해야 합니다.
python manage.py makemigrations
python manage.py migrate
이 명령을 실행한 후 슈퍼 사용자를 생성해야 합니다.슈퍼 사용자를 만들려면 다음을 실행합니다.
python manage.py createsuperuser
슈퍼 사용자 세부 정보를 입력합니다.서버를 다시 실행합니다.
여기 있습니다.
나는 실행을 통해 장고를 2.1.4에서 2.1.5로 업그레이드하여 문제를 해결했습니다.
pip install --upgrade django==2.1.5
하지만 버그가 이전 버전의 장고를 사용하여 데이터베이스에 삽입한 개체와 관련이 있는 것처럼 보이기 때문에 프로젝트를 다시 빌드해야 했습니다.
업데이트:
전체 프로젝트를 삭제하는 대신 데이터베이스만 삭제하면 충분했습니다.그리고 나서 달리는 것.
python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser
저의 경우, 그것은 제 장고 버전(2.1) 때문이었습니다.
상위 버전 설치(2.1.5+ 이상)
제
db.sqlite3
을 제외하고는 과 같습니다.__init__.py
다음 명령을 실행합니다.
pip install django==2.1.5 --upgrade
python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
2하고 Django 2.2.12를 에도 Django 2.2.12를 실행할 수 .migrate
또는 공식 데이터베이스 재구성 스크립트에서 동일한 오류가 발생했습니다.__old_
:django.db.utils.IntegrityError: The row in table 'djangocms_blog_post_translation' with primary key '2' has an invalid foreign key: djangocms_blog_post_translation.master_id contains a value '2' that does not have a corresponding value in djangocms_blog_post__old.id.
여기 내 해킹이 있습니다.
- 을 sql: 데터베내용을 sql:에.
sqlite3 my_db.db .dump > my_db.sql
- 출력에 하고 sql regex를 합니다.
__old" ("id")
와 함께" ("id") DEFERRABLE INITIALLY DEFERRED
- 이전 데이터베이스 파일 삭제
- 수정된 SQL을 새 데이터베이스에 로드합니다.
sqlite3 my_db.db < my_db.sql
- & 이익
django 버전 2.1.5 유지
This issue is adressed only in this version of Django
- pip 설치 django==2.1.5
- SQLite 데이터베이스 삭제
- 마이그레이션 실행
- 서버 python manage.py runserver를 시작합니다.
이것은 위의 문제를 해결합니다.
저에게도 똑같은 일이 일어나고 있습니다. 매우 실망스럽습니다.환경을 위해 아나콘다를 사용하는데, 최신 버전의 sqlite를 즉시 다시 설치하지 않고는 sqlite를 제거할 수 없다는 것을 알게 되었습니다.이전 버전의 장고를 시도하는 것도 효과가 없는 것처럼 보였습니다.제게 효과가 있었던 유일한 해결책은 Postgre를 사용하는 것입니다.SQL 데이터베이스.확실히 이상적이지는 않지만 Postgre를 활용할 계획입니다.미래의 SQL 데이터베이스는 완전히 시간 낭비가 아니었습니다.만약 당신이 나와 같은 장소에 있다는 것을 알게 된다면, 이 비디오는 당신이 Postgre를 연결하는 방법을 알고 싶다면 도움이 될 것입니다.장고 프로젝트의 SQL 데이터베이스입니다.
Postgre를 설치해야 합니다.SQL 데이터베이스는 settings.py 에서 실제로 변경하기 전에 모든 옵션에서 다음을 덜 클릭합니다.그러나 설치하는 동안 사용하는 사용자 이름과 암호를 기억해야 합니다.
=> /YourAppFolder/migrations/'0001_initial.py'와 같이 마이그레이션 중인 파일이 이러한 파일을 모두 삭제하는 것을 볼 수 있습니다.다음 명령을 실행합니다.python manage.py makemigrations
2-python manage.py migrate
희망, 그것은 당신의 문제를 해결해야 합니다.
위의 문제 및 해결 방법은 다음과 같습니다.
▁in다니▁go합을 입력하세요.pip install django==2.1.7
최신 니면고최버전신의장.
후 에 를 입력합니다.python manage.py makemigrations
,그리고 나서.python manage.py migrate
코드 " 널에코서시다작니합버를터드미서"로 합니다.python manage.py runserver
비밀번호와 제품 추가를 사용하여 관리 서버에 로그인하면 제품이 성공적으로 추가됩니다.
않은 , 은 당신의 소프웨어다드않다사다다른있니습수이웹동으로 .settings.py
및 DATABASES
딕트, 당신은 대체할 수 있습니다..sqlit3
와 함께.postgresql
그리고 그 바로 아래에 변화를 줍니다.db.sqlit3
db.sql
/db/postgre/postgre/postgre/postgre/사용하는 됩니다.SQL.
이 작업을 수행하려면 다음 작업을 수행해야 합니다.pip install psycopg2
.
합니다.db.sqlite3
file 것을 것에 파있이 다른 .__init__.py
앱의 마이그레이션 폴더에 있는 파일입니다. 것을 다 그모걸다하나면고수, 당은도있다니습갈망신든다▁once▁run있▁you니▁can수를 실행할 수 있습니다.python manage.py makemigrations
파이썬 리고비단뱀그뱀단.manage.py migrate
그리고 나서 그것은 작동할 것입니다 :)
제가 누군가를 도울 수 있기를 바랍니다!
먼저 장고 버전 업데이트:
pip install django --upgrade
그리고나서
./manage.py makemigration
./manage.py migrate
./manage.py runserver
명령줄에서 수행한 작업이 4개뿐이며, 이 작업을 통해 제 작업을 수정되었습니다.
- ctrl + c (서버 중지)
py manage.py makemigrations
py manage.py migrate
py manage.py runserver
서버 시작)
저는 2개의 sqlite 데이터베이스와 커스텀 데이터베이스 라우터를 가지고 있다는 것을 제외하고는 동일한 문제가 있었습니다.저는 장고를 1.11.20으로 다운그레이드하고 데이터베이스를 다시 작성할 필요가 없습니다.
위의 답변으로 이 오류를 해결할 수 없는 분들은 앱 이름을 "메인"으로 만든 경우 동일한 앱 이름 문제로 인해 이 오류가 발생할 수 있습니다.따라서 앱 이름 "메인"을 다른 이름으로 변경해 보십시오.
장고를 업그레이드해야 합니다. 이 문제는 이번 PR https://github.com/django/django/pull/10733 에서 수정되었습니다.
저는 몇 가지 모델을 변경하여 문제를 해결했습니다.저는 하나의 프로젝트와 하나의 프로젝트를 가지고 있었습니다.데이터베이스 테이블이 혼동되어 이 오류가 발생했습니다.
아래를 사용하여 이 문제를 해결했습니다.
db.sqlit3를 삭제합니다.
앱의 디렉터리에서 pycache의 모든 항목 삭제
그럭저럭파이 메이크 마이그레이션, 관리.파이 마이그레이션, 관리.py는 superuser를 생성한 다음 manage.py runserver를 생성합니다.
저도 같은 문제가 있었고 아래와 같이 수정했습니다.
최신 기보얻을 하십시오.django
»
의 최신정얻을 합니다.SQL Lite
»
db.sqlite3
의 파일
약간의 변경 사항을 변경합니다.models.py
예: 필드 크기 변경)
새로운 것을 만들어 내다db.sqllite3
을 만듭니다.makemigrations
&migrate commands
생성된 로새생가기오를 .db.sqllite3
줄을 지어 에 들어가다.SQL Lite
나는 django를 2.2 버전으로 설치/다운그레이드했고, 이것은 django 3.x를 제거했습니다.
pip install django==2.2
그런 다음 db.sqlite 파일을 삭제한 다음
나는 노력했다.
python manage.py makemigrations,
python manage.py migrate
python manage.py creatingsuperuser.
업그레이드
pip install Django --upgrade
를 합니다.
db.sqlite3
프로젝트의 루트 폴더를 파일로 저장합니다.마이그레이션을 다시 실행하여 루트 폴더에 새 db.sqlite3을 생성합니다.
python3 manage.py makemigrations
마이그레이션
python3 manage.py migrate
이 기능만 사용할 수도 있고 삭제된 경우 새 수퍼유저를 만들어야 할 수도 있습니다.
- 다음을 사용하여 수퍼유저 확인
python manage.py shell
from django.contrib.auth.models import User
User.objects.filter(is_superuser=True)
한다면<QuerySet []>
사용자가 없는 것 같습니다.그렇지 않으면 사용자가 존재하는지 확인합니다.
- 합니다.
python manage.py createsuperuser
단계:
ENV에서 현재 장고를 제거합니다."anaconda3/envs/yourenv/lib/python3.7/site-packages/Django 모든 버전의 폴더를 삭제하기만 하면 됩니다.
참고: Anaconda 사용자만 다른 사용자가 ENV에서 패키지를 제거하는 방법을 알아내야 합니다.
repo as zip 파일을 다운로드합니다.
압축을 풉니다.
ENV로 전환합니다.
추출된 폴더를 입력합니다.
려달을 합니다.
"python setup.py install"
그리고 장고를 설치합니다.의 이전항을 합니다.
db.sqlite3
새 일을 . 이제 마이그레이션을 다시 적용하여 새 파일을 만듭니다.db.sqlite3
java.참고: 이전 DB 파일을 수정하고 데이터 손실을 방지하는 방법을 모르겠습니다.그러니 알고 계시다면 말씀해 주시기 바랍니다.
서버를 실행합니다.
축하합니다!이제는 잘 작동합니다.
공식 장고 릴리스에서 1월에 최신 장고로 업데이트.
삭제된 경우 앱에서 마이그레이션 폴더를 삭제하지 않았는지, 폴더를 복원하고 마이그레이션 파일을 제거하려고 시도하거나, 영구적으로 삭제된 경우 앱을 만들고 작업을 복사하여 붙여넣기하십시오.
그리고나서
1. Delete db.sqlite3
2. python manage.py makemigrations
3. python manage.py migrate
4. python manage.py createsuperuser
HTH :)
- db.sqlite3 삭제
- 이주 및 이주
- 새 수퍼유저 생성
이것은 나에게 효과가 있습니다.
참고: Sqlite3 DB에 개인 데이터가 있는 경우 Sqlite3 DB를 삭제할 예정이므로 이 트릭을 따르지 마십시오.
저는 이 질문에 많은 답이 있다는 것을 알고 있지만 파이썬 초보자이고 장고를 배우기 때문에 이 트릭만이 이 문제를 해결하는 데 도움이 됩니다.
- django 웹 서버 실행 중지, Ctrl-C
- db.sqlite3 삭제
- Django 이전 버전 제거
- "pip install django"로 최신 버전의 장고 설치
- 프로젝트의 모든 앱에서 모든 마이그레이션 삭제
이제 터미널에서 이 명령을 실행합니다.
python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser
사용자 증명 제공 ("슈퍼 사용자 자격 증명")python manage.py runserver
이제 마지막으로 업데이트된 슈퍼 사용자의 자격 증명으로 관리 패널에 로그인하고 레코드를 추가해 보십시오.
누군가가 이 링크에서 동일한 제안을 했습니다.
.7 인치-2.2.
가 있었습니다 - 내겐효있었어요가과요있어.
db.sqlite3을 삭제합니다.
각 앱의 마이그레이션 폴더에서 __init_.py 이외의 모든 항목을 삭제합니다.
각 앱 내에서 __pycache__ 폴더를 삭제합니다.
당신이 모든 앱에서 그것을 해야 하는지 아니면 관련 앱에서만 그것을 해야 하는지는 모르겠지만, 이것은 저에게 효과가 있었습니다.
언급URL : https://stackoverflow.com/questions/53637182/django-no-such-table-main-auth-user-old
'programing' 카테고리의 다른 글
Cygwin에 Pip-3.2 설치 (0) | 2023.05.21 |
---|---|
'마이크로소프트.SqlServer.Azure에서 Types 버전 10 이상을 찾을 수 없습니다. (0) | 2023.05.21 |
SQL Server Management Studio 17에서 하나 이상의 구성 요소를 찾을 수 없습니다. (0) | 2023.05.21 |
정적 속성에 바인딩 (0) | 2023.05.21 |
파일을 만들 디렉터리가 없는 경우 어떻게 디렉터리를 만들 수 있습니까? (0) | 2023.05.21 |