functional

This commit is contained in:
2024-04-15 12:06:01 +02:00
parent 508258bf0f
commit a01b6bdbc2
7 changed files with 237 additions and 200 deletions
+56
View File
@@ -0,0 +1,56 @@
import { Association, BelongsToGetAssociationMixin, DataTypes, ForeignKey, Model, NonAttribute, Sequelize } from "sequelize";
import { User } from "./User";
const sequelize = new Sequelize({
dialect: 'sqlite',
storage: 'db.sqlite'
});
export type PostAttributes = {
id: number;
title: string;
content: string;
date: number;
user_id:ForeignKey<User['id']>;
}
export type PostCreationAttributes = {
title: string;
content: string;
date: number;
user_id:number;
}
export class Post extends Model<PostAttributes, PostCreationAttributes> {
declare id: number;
declare user:NonAttribute<User>;
declare user_id:ForeignKey<User['id']>;
declare getUser: BelongsToGetAssociationMixin<User>;
declare static associations: {
user: Association<User, Post>;
};
}
Post.init(
{
id: {
allowNull: false,
autoIncrement: true,
type: DataTypes.INTEGER,
primaryKey: true,
unique: true,
},
content: {
type: DataTypes.STRING
},
title: {
type: DataTypes.STRING
},
date: {
type: DataTypes.DATE
},
},
{
tableName: 'Posts',
sequelize // passing the `sequelize` instance is required
}
);