Django-rest-framework: ์œ ํ˜• ๊ฐœ์ฒด 'ํ† ํฐ'์— '๊ฐœ์ฒด' ์†์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2018๋…„ 10์›” 16์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: encode/django-rest-framework

์‚ฌ์šฉ์ž ์ด๋ฆ„ ๋Œ€์‹  ์ด๋ฉ”์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ์œ ํ•œ ์ง๋ ฌ ๋ณ€ํ™˜๊ธฐ ๋ฐ ๋ณด๊ธฐ๋ฅผ ๊ตฌํ˜„ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. GetAuthToken ๋ณด๊ธฐ๋ฅผ ๋ณต์‚ฌํ•  ๋•Œ objects ์†์„ฑ์ด ์—†๋Š” Token ๊ฐœ์ฒด์— ๋Œ€ํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค.

์žฌํ˜„ ๋‹จ๊ณ„

  1. mkdir restframework
  2. cd restframework/
  3. virtualenv env
  4. source env/bin/activate
  5. pip install django
  6. pip install djangorestframework
  7. django-admin startproject tutorial
  8. cd tutorial
  9. python manage.py shell
    ```
    rest_framework.authtoken.models์—์„œ ๊ฐ€์ ธ์˜ค๊ธฐ ํ† ํฐ
    Token.objects.all()
## Expected behavior
Token class can query objects

## Actual behavior

ํŒŒ์ด์ฌ 3.6.5 (v3.6.5:f59c0932b4, 2018๋…„ 3์›” 28์ผ, 03:03:55)
[GCC 4.2.1(Apple Inc. ๋นŒ๋“œ 5666)(์  3)] on darwin
์ž์„ธํ•œ ๋‚ด์šฉ์„ ๋ณด๋ ค๋ฉด "๋„์›€๋ง", "์ €์ž‘๊ถŒ", "ํฌ๋ ˆ๋”ง" ๋˜๋Š” "๋ผ์ด์„ผ์Šค"๋ฅผ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค.
(๋Œ€ํ™”ํ˜• ์ฝ˜์†”)

rest_framework.authtoken.models์—์„œ ๊ฐ€์ ธ์˜ค๊ธฐ ํ† ํฐ
Token.objects.all()
์—ญ์ถ”์ (๊ฐ€์žฅ ์ตœ๊ทผ ํ˜ธ์ถœ ๋งˆ์ง€๋ง‰):
ํŒŒ์ผ "", 1ํ–‰, ์—์„œ
AttributeError: ์œ ํ˜• ๊ฐœ์ฒด 'ํ† ํฐ'์— '๊ฐœ์ฒด' ์†์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค.
```

์ด ํด๋ž˜์Šค(django ๋ชจ๋ธ)๋Š” objects ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฟผ๋ฆฌํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์„ค์ •' INSTALLED_APPS ์—์„œ ์ธ์ฆ ํ† ํฐ์„ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

ํŽธ์ง‘: INSTALLED_APPS ์— ์—†์œผ๋ฉด ์ถ”์ƒ์ ์ด๊ณ  ๊ธฐ๋ณธ ๊ด€๋ฆฌ์ž( objects )๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

์„ค์ •' INSTALLED_APPS ์—์„œ ์ธ์ฆ ํ† ํฐ์„ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

ํŽธ์ง‘: INSTALLED_APPS ์— ์—†์œผ๋ฉด ์ถ”์ƒ์ ์ด๊ณ  ๊ธฐ๋ณธ ๊ด€๋ฆฌ์ž( objects )๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

@xordoquy ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

settings.py์˜ INSTALLED_APPS ๋ชฉ๋ก์— 'rest_framework.authtoken' ์ถ”๊ฐ€

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰