169 похожих чатов

Первая таблица поля: user_id, name, middle_name, bornDate, gender Вторая таблица поля:

user_id, education, comment, citizenship
Как мне связать две таблицы? Я сделал класс User и User_Info, и у User_Info сделал поле user_id с ForeignKey('user.user_id'). Но фласк выдает ошибку:
Mapper mapped class User->user could not assemble any primary key columns for mapped table 'user'

Что я не так делаю? Как мне связать их?

4 ответов

20 просмотров

код показал бы ради приличия

Никита-Мадорский Автор вопроса
Vladislav
код показал бы ради приличия

class User(db.Model): user_id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100), nullable=False) middle_name = db.Column(db.String(100), nullable=False) bornDate = db.Column(db.DateTime, default=datetime.strptime('01.01.1990', '%d.%m.%Y')) gender = db.Column(db.String(50)) def __repr__(self): return '<User %r>' % self.user_id class User_Info(db.Model): user_id = db.Column(db.Integer, db.ForeignKey('user.user_id')) education = db.Column(db.String(100)) comment = db.Column(db.Text, nullable=True) citizenship = db.Column(db.String(50)) def __repr__(self): return '<User_Info %r>' % self.user_id

Никита Мадорский
class User(db.Model): user_id = db.Column(db.I...

1) в User первичный ключ сделай просто id. 2) в User_Info ты даешь ключ на user.user_id. а как фласк должен понять, что есть user? 3) User_Info - не есть нормальное названи. UserInfo

Никита-Мадорский Автор вопроса
Ильяс Хакиев
1) в User первичный ключ сделай просто id. 2) в U...

Спасибо, но я не совсем понял как решить проблему. 1) По ТЗ надо сделать именно поле user_id. Для меня это тоже не очень нормально, но если я правильно понимаю, то на ошибку это не влияет, так ведь? 2) Вот тут не очень понял. Я думал фласк это понимает автоматически, когда я пишу название таблицы и он ищет эту таблицу в БД. Я должен как-то ему дать понять что есть таблица User? 3) Исправил, но это тоже не влияет на ошибку, как я понимаю

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
DS
8
Карта сайта