- React + Vite + Tailwind 프론트엔드 - Express + Sequelize + MariaDB 백엔드 - 넥슨 OAuth 2.0 인증 (캐릭터 목록 조회) - 주간 보스 결정석 수익 계산기 UI (리스트형) - Docker Compose + Caddy 리버스 프록시 설정 - 보스/난이도 이미지 에셋 포함 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
19 lines
719 B
JavaScript
19 lines
719 B
JavaScript
import { DataTypes } from 'sequelize';
|
|
import { sequelize } from '../lib/db.js';
|
|
|
|
export const UserCharacter = sequelize.define('UserCharacter', {
|
|
id: { type: DataTypes.INTEGER, autoIncrement: true, primaryKey: true },
|
|
user_id: { type: DataTypes.INTEGER, allowNull: false },
|
|
character_name: { type: DataTypes.STRING(50), allowNull: false },
|
|
ocid: { type: DataTypes.STRING(100) },
|
|
world_name: { type: DataTypes.STRING(20) },
|
|
job_name: { type: DataTypes.STRING(50) },
|
|
character_level: { type: DataTypes.INTEGER },
|
|
character_image: { type: DataTypes.STRING(255) },
|
|
}, {
|
|
tableName: 'user_characters',
|
|
underscored: true,
|
|
indexes: [
|
|
{ unique: true, fields: ['user_id', 'character_name'] },
|
|
],
|
|
});
|