builtins.TypeError TypeError - PullRequest
       8

builtins.TypeError TypeError

0 голосов
/ 23 сентября 2018

я пробовал 100 раз, я не знаю, что не так с этим кодом.кто-нибудь, пожалуйста, помогите мне разобраться в этой проблеме или скажите, что я делаю неправильно в приведенном ниже коде.

Каждый раз, когда я получаю:

builtins.TypeError TypeError: getCategoryItems () отсутствует 1 обязательный позиционный аргумент: 'cat_id'

Код:

@app.route('/')
def getAllItems():
    return redirect(url_for('getCategoryItems', category_name='ab', cat_id=1))


@app.route('/<string:category_name>/items/')
def getCategoryItems(category_name, cat_id):
    id = cat_id;
    items = session.query(Item).filter_by(category_id=id).all()
    output = ''
    for item in items:
        output += item.title + '</br>'
    return output

1 Ответ

0 голосов
/ 23 сентября 2018

Вам не нужно передавать category_name, вам нужен только идентификатор категории.Имя категории должно содержаться в каждом элементе, выбранном из базы данных.

Вы получаете сообщение об ошибке, поскольку cat_id не определяется при вызове функции def getCategoryItems(category_name, cat_id).

Однако я хотел бы предложить, если вы действительно хотите, чтобы все предметы просто использовались:

@app.route('/')
def getAllItems():
  items = session.query(Item).all()
  ...

Для получения дополнительной информации посмотрите документацию flask-sqlalchemy .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...