feat: Anpassung der Datenbankmodelle zur Unterstützung von snake_case und Einführung von freezeTableName

- Aktualisierung der Modelle in verschiedenen Bereichen, um die Feldnamen im snake_case-Format zu verwenden.
- Hinzufügen der Option freezeTableName zu den Modellen, um die Tabellennamen in der Datenbank unverändert zu lassen.
- Verbesserung der Konsistenz und Lesbarkeit des Codes durch einheitliche Namenskonventionen.
This commit is contained in:
Torsten Schulz (local)
2025-08-23 06:04:23 +02:00
parent e168adeb51
commit 66818cc728
114 changed files with 548 additions and 380 deletions

View File

@@ -4,7 +4,7 @@ import { sequelize } from '../../utils/sequelize.js';
class Blog extends Model {}
Blog.init({
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
field: 'user_id'
@@ -23,12 +23,12 @@ Blog.init({
allowNull: false,
defaultValue: 'public',
},
ageMin: {
age_min: {
type: DataTypes.INTEGER,
allowNull: true,
field: 'age_min'
},
ageMax: {
age_max: {
type: DataTypes.INTEGER,
allowNull: true,
field: 'age_max'
@@ -38,12 +38,12 @@ Blog.init({
type: DataTypes.STRING(10),
allowNull: true,
},
createdAt: {
created_at: {
type: DataTypes.DATE,
defaultValue: DataTypes.NOW,
field: 'created_at'
},
updatedAt: {
updated_at: {
type: DataTypes.DATE,
defaultValue: DataTypes.NOW,
field: 'updated_at'
@@ -55,6 +55,7 @@ Blog.init({
schema: 'community',
timestamps: true,
underscored: true,
});
,
freezeTableName: true});
export default Blog;

View File

@@ -4,12 +4,12 @@ import { sequelize } from '../../utils/sequelize.js';
class BlogPost extends Model {}
BlogPost.init({
blogId: {
blog_id: {
type: DataTypes.INTEGER,
allowNull: false,
field: 'blog_id'
},
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
field: 'user_id'
@@ -22,12 +22,12 @@ BlogPost.init({
type: DataTypes.TEXT,
allowNull: false,
},
createdAt: {
created_at: {
type: DataTypes.DATE,
defaultValue: DataTypes.NOW,
field: 'created_at'
},
updatedAt: {
updated_at: {
type: DataTypes.DATE,
defaultValue: DataTypes.NOW,
field: 'updated_at'
@@ -39,6 +39,7 @@ BlogPost.init({
schema: 'community',
timestamps: true,
underscored: true,
});
,
freezeTableName: true});
export default BlogPost;

View File

@@ -4,7 +4,7 @@ import { sequelize } from '../../utils/sequelize.js';
class Diary extends Model { }
Diary.init({
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
},
@@ -12,11 +12,11 @@ Diary.init({
type: DataTypes.TEXT,
allowNull: false,
},
createdAt: {
created_at: {
type: DataTypes.DATE,
defaultValue: DataTypes.NOW,
},
updatedAt: {
updated_at: {
type: DataTypes.DATE,
defaultValue: DataTypes.NOW,
}
@@ -27,6 +27,7 @@ Diary.init({
schema: 'community',
timestamps: true,
underscored: true,
});
,
freezeTableName: true});
export default Diary;

View File

@@ -4,23 +4,23 @@ import { sequelize } from '../../utils/sequelize.js';
class DiaryHistory extends Model { }
DiaryHistory.init({
diaryId: {
diary_id: {
type: DataTypes.INTEGER,
allowNull: false,
},
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
},
oldText: {
old_text: {
type: DataTypes.TEXT,
allowNull: false,
},
oldCreatedAt: {
old_created_at: {
type: DataTypes.DATE,
allowNull: false,
},
oldUpdatedAt: {
old_updated_at: {
type: DataTypes.DATE,
allowNull: false,
},
@@ -31,6 +31,7 @@ DiaryHistory.init({
schema: 'community',
timestamps: false,
underscored: true,
});
,
freezeTableName: true});
export default DiaryHistory;

View File

@@ -7,7 +7,7 @@ const Folder = sequelize.define('folder', {
type: DataTypes.STRING,
allowNull: false,
},
parentId: {
parent_id: {
type: DataTypes.INTEGER,
allowNull: true,
references: {
@@ -15,7 +15,7 @@ const Folder = sequelize.define('folder', {
key: 'id',
},
},
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -28,6 +28,7 @@ const Folder = sequelize.define('folder', {
schema: 'community',
underscored: true,
timestamps: true,
});
,
freezeTableName: true});
export default Folder;

View File

@@ -8,7 +8,7 @@ const FolderImageVisibility = sequelize.define('folder_image_visibility', {
primaryKey: true,
allowNull: false
},
folderId: {
folder_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -16,7 +16,7 @@ const FolderImageVisibility = sequelize.define('folder_image_visibility', {
key: 'id'
}
},
visibilityTypeId: {
visibility_type_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -32,6 +32,7 @@ const FolderImageVisibility = sequelize.define('folder_image_visibility', {
schema: 'community',
timestamps: false,
underscored: true,
});
,
freezeTableName: true});
export default FolderImageVisibility;

View File

@@ -8,7 +8,7 @@ const FolderVisibilityUser = sequelize.define('folder_visibility_user', {
primaryKey: true,
allowNull: false
},
folderId: {
folder_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -16,7 +16,7 @@ const FolderVisibilityUser = sequelize.define('folder_visibility_user', {
key: 'id'
}
},
visibilityUserId: {
visibility_user_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -29,6 +29,7 @@ const FolderVisibilityUser = sequelize.define('folder_visibility_user', {
schema: 'community',
timestamps: false,
underscored: true,
});
,
freezeTableName: true});
export default FolderVisibilityUser;

View File

@@ -32,6 +32,7 @@ const Friendship = sequelize.define('friendship', {
schema: 'community',
underscored: true,
timestamps: true,
});
,
freezeTableName: true});
export default Friendship;

View File

@@ -9,7 +9,7 @@ const GuestbookEntry = sequelize.define('guestbook_entry', {
primaryKey: true,
allowNull: false,
},
recipientId: {
recipient_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -17,7 +17,7 @@ const GuestbookEntry = sequelize.define('guestbook_entry', {
key: 'id'
}
},
senderId: {
sender_id: {
type: DataTypes.INTEGER,
allowNull: true,
references: {
@@ -25,15 +25,15 @@ const GuestbookEntry = sequelize.define('guestbook_entry', {
key: 'id'
}
},
senderUsername: {
sender_username: {
type: DataTypes.STRING,
allowNull: true,
},
contentHtml: {
content_html: {
type: DataTypes.TEXT,
allowNull: false,
},
imageUrl: {
image_url: {
type: DataTypes.STRING,
allowNull: true,
},
@@ -42,6 +42,7 @@ const GuestbookEntry = sequelize.define('guestbook_entry', {
schema: 'community',
timestamps: true,
underscored: true,
});
,
freezeTableName: true});
export default GuestbookEntry;

View File

@@ -11,7 +11,7 @@ const Image = sequelize.define('image', {
type: DataTypes.TEXT,
allowNull: true,
},
originalFileName: {
original_file_name: {
type: DataTypes.STRING,
allowNull: false,
},
@@ -20,7 +20,7 @@ const Image = sequelize.define('image', {
allowNull: false,
unique: true,
},
folderId: {
folder_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -28,7 +28,7 @@ const Image = sequelize.define('image', {
key: 'id',
},
},
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -41,6 +41,7 @@ const Image = sequelize.define('image', {
schema: 'community',
underscored: true,
timestamps: true,
});
,
freezeTableName: true});
export default Image;

View File

@@ -8,7 +8,7 @@ const ImageImageVisibility = sequelize.define('image_image_visibility', {
primaryKey: true,
allowNull: false
},
imageId: {
image_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -16,7 +16,7 @@ const ImageImageVisibility = sequelize.define('image_image_visibility', {
key: 'id'
}
},
visibilityTypeId: {
visibility_type_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -32,6 +32,7 @@ const ImageImageVisibility = sequelize.define('image_image_visibility', {
schema: 'community',
timestamps: false,
underscored: true,
});
,
freezeTableName: true});
export default ImageImageVisibility;

View File

@@ -21,6 +21,7 @@ const ImageVisibilityUser = sequelize.define('image_visibility_user', {
timestamps: false,
underscored: true,
schema: 'community'
});
,
freezeTableName: true});
export default ImageVisibilityUser;

View File

@@ -6,6 +6,7 @@ const interest = sequelize.define('interest_type', {
tableName: 'interest',
schema: 'community',
underscored: true
});
,
freezeTableName: true});
export default interest;

View File

@@ -36,7 +36,7 @@ const User = sequelize.define('user', {
type: DataTypes.STRING,
allowNull: false,
},
registrationDate: {
registration_date: {
type: DataTypes.DATE,
allowNull: false,
defaultValue: DataTypes.NOW
@@ -45,11 +45,11 @@ const User = sequelize.define('user', {
type: DataTypes.BOOLEAN,
defaultValue: false
},
resetToken: {
reset_token: {
type: DataTypes.UUID,
allowNull: true
},
hashedId: {
hashed_id: {
type: DataTypes.STRING,
allowNull: true
},
@@ -57,7 +57,7 @@ const User = sequelize.define('user', {
type: DataTypes.BOOLEAN,
defaultValue: true
},
authCode: {
auth_code: {
type: DataTypes.STRING,
allowNull: true
}
@@ -70,7 +70,8 @@ const User = sequelize.define('user', {
const hashedId = crypto.createHash('sha256').update(user.id.toString()).digest('hex');
user.hashedId = hashedId;
await user.save();
}
,
freezeTableName: true}
}
});

View File

@@ -5,7 +5,7 @@ import UserParamType from '../type/user_param.js';
import { encrypt, decrypt } from '../../utils/encryption.js';
const UserParam = sequelize.define('user_param', {
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -13,7 +13,7 @@ const UserParam = sequelize.define('user_param', {
key: 'id',
},
},
paramTypeId: {
param_type_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -55,7 +55,8 @@ const UserParam = sequelize.define('user_param', {
{
unique: true,
fields: ['user_id', 'param_type_id'],
},
,
freezeTableName: true},
],
});

View File

@@ -21,6 +21,7 @@ const UserParamVisibility = sequelize.define('user_param_visibility', {
timestamps: false,
underscored: true,
schema: 'community'
});
,
freezeTableName: true});
export default UserParamVisibility;

View File

@@ -4,7 +4,7 @@ import User from './user.js';
import UserRightType from '../type/user_right.js';
const UserRight = sequelize.define('user_right', {
userId: {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -12,7 +12,7 @@ const UserRight = sequelize.define('user_right', {
key: 'id'
}
},
rightTypeId: {
right_type_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
@@ -24,6 +24,7 @@ const UserRight = sequelize.define('user_right', {
tableName: 'user_right',
schema: 'community',
underscored: true,
});
,
freezeTableName: true});
export default UserRight;