在 Django 项目中使用 Trello API 键

Using Trello API Key in a Django Project

我已经查看了 Whosebug,但未能找到问题的答案,所以我在这里提问。

我正在尝试创建一个使用 Trello API 的仪表板以显示特定指标。我遇到问题的代码部分在这里:

from django.conf import settings
from dashing.widgets import NumberWidget
from trello import TrelloApi

trello = TrelloApi(settings.API_KEY)

class TrelloCards(NumberWidget):
    title = 'The Difference Dashboard'
    def get_more_info(self):
        return ' {} closed'.format(len(trello.boards.get_card_filter('closed', 'BOARD_ID')))
    def get_change_rate(self):
        return ' {} open'.format(len(trello.boards.get_card_filter('closed', 'BOARD_ID')))
    def get_value(self):
        return len(trello.boards.get_card_filter('all', 'BOARD_ID'))

其中 API_KEY 是我的 Trello Developer API KEY,BOARD_ID 是我当前使用的看板的 ID。

当我转到 运行 这段代码时,我收到一条错误消息:

AttributeError at /dashboard/
'Settings' object has no attribute 'API_KEY'

我试过将代码更改为

trello = TrelloApi(API_KEY)

与文档所说的一致,但这并不能解决问题。

如果有人能指出我做错事的正确方向,我将不胜感激!

您需要将这三个凭据放入项目的 settings.py 文件中:

Settings.py

TRELLO_API_KEY = 'your_trello_key'
TRELLO_API_SECRET = 'your_trello_api_secret'
CALLBACK_DOMAIN = 'your_trello_callback_domain'

像这样:

import os

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    .....
    .....
  ]

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    .....
    .....
)

API_KEY = 'your_trello_api_key'
TRELLO_API_SECRET = 'your_trello_api_secret'
CALLBACK_DOMAIN = 'your_trello_callback_domain'