Уведомления

Группа в Telegram: присоединиться

#1 Янв. 13, 2021 15:10:03

macik
Зарегистрирован: 2021-01-13
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raise ValueError('over-determined primary key %s.' % name)

Привет. Подскажите почему один код вызывает ошибку, а второй нет.

Этот вызывает

 class MessLog(BaseModel_50):
    id = PrimaryKeyField()
    message = AutoField()
    
    created_at = DateTimeField(default=datetime.datetime.now())
    updated_at = DateTimeField(default=datetime.datetime.now())
    class Meta:
        db_table = 'mess_log'
        order_by = ('updated_at',)

Этот нет:
 class UsersTelegram(BaseModel_50):
    id = PrimaryKeyField()
    lastname = CharField(max_length=100)
    name = CharField(max_length=100)
    tel = CharField(max_length=12)
    user_id = CharField(max_length=10)
    chat_id = CharField(max_length=10)
    access = BooleanField()
    created_at = DateTimeField(default=datetime.datetime.now())
    updated_at = DateTimeField(default=datetime.datetime.now())
    class Meta:
        db_table = 'telegram_users'
        order_by = ('updated_at',)

Офлайн

#2 Янв. 13, 2021 15:26:43

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 1816
Репутация: +  260  -
Профиль   Отправить e-mail  

raise ValueError('over-determined primary key %s.' % name)

Да ХЗ, вы бы хоть написали в каком месте ошибку выдает. Ваш код бессмысленен чуть более чем полностью для хоть какогонить вменяемого ответа.
Что такое BaseModel_50 от которого наследуют классы UsersTelegram и MessLog? Что внутри функций PrimaryKeyField() и AutoField().?
Из всего вышеперечисленого можно сказать только что вот этой срочки “message = AutoField()” нету в коде который не вызывает ошибку. Можно предположить что ошибка изза нее.

Отредактировано PEHDOM (Янв. 13, 2021 15:27:27)

Офлайн

#3 Янв. 13, 2021 17:04:21

macik
Зарегистрирован: 2021-01-13
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raise ValueError('over-determined primary key %s.' % name)

PEHDOM
Да ХЗ, вы бы хоть написали в каком месте ошибку выдает. Ваш код бессмысленен чуть более чем полностью для хоть какогонить вменяемого ответа.Что такое BaseModel_50 от которого наследуют классы UsersTelegram и MessLog? Что внутри функций PrimaryKeyField() и AutoField().?Из всего вышеперечисленого можно сказать только что вот этой срочки “message = AutoField()” нету в коде который не вызывает ошибку. Можно предположить что ошибка изза нее.
ОЙ. Сори.


 File "peewee_my.py", line 8, in <module>
    from model.model_all import *
  File "model_all.py", line 95, in <module>
    class MessLog(BaseModel_50): 
  File "/lib/python3.6/site-packages/peewee.py", line 6151, in __new__
    raise ValueError('over-determined primary key %s.' % name)
ValueError: over-determined primary key MessLog.
Ругается на class MessLog(BaseModel_50):

Офлайн

#4 Янв. 13, 2021 17:12:21

macik
Зарегистрирован: 2021-01-13
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raise ValueError('over-determined primary key %s.' % name)

По всей видимости Вы правы.
Ошибка по этой причине …

У меня теперь еще вопрос, есть где то описание пи типу полей mysql именно с сокращениями peewee ?

Офлайн

#5 Янв. 13, 2021 18:03:51

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 1816
Репутация: +  260  -
Профиль   Отправить e-mail  

raise ValueError('over-determined primary key %s.' % name)

предполагаю что на офф сайте с документацией к пиву.
http://docs.peewee-orm.com/en/latest/peewee/models.html#field-types-table
оно?

Отредактировано PEHDOM (Янв. 13, 2021 18:05:24)

Офлайн

#6 Янв. 14, 2021 10:25:34

macik
Зарегистрирован: 2021-01-13
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

raise ValueError('over-determined primary key %s.' % name)

PEHDOM
предполагаю что на офф сайте с документацией к пиву.http://docs.peewee-orm.com/en/latest/peewee/models.html#field-types-tableоно?

Спасибо большое! Оно самое!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version