fix: correct column names in data migration script to match actual Directus schema
- directus_files: uploaded_on → date_created alias - directus_users: join_date → date_created, remove email_notifications_key - junction_directus_users_files: remove non-existent sort column - sexy_videos: remove non-existent likes_count/plays_count (default 0) - sexy_recordings: remove non-existent featured column (schema has default false) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -44,7 +44,7 @@ function copyFile(src: string, dest: string) {
|
||||
async function migrateFiles() {
|
||||
console.log("📁 Migrating files...");
|
||||
const { rows } = await query(
|
||||
`SELECT id, title, description, filename_disk, type, filesize, duration, uploaded_by, date_created
|
||||
`SELECT id, title, description, filename_disk, type, filesize, duration, uploaded_by, uploaded_on as date_created
|
||||
FROM directus_files`,
|
||||
);
|
||||
|
||||
@@ -95,8 +95,8 @@ async function migrateUsers() {
|
||||
console.log("👥 Migrating users...");
|
||||
const { rows } = await query(
|
||||
`SELECT u.id, u.email, u.password, u.first_name, u.last_name,
|
||||
u.description, u.avatar, u.date_created,
|
||||
u.artist_name, u.slug, u.email_notifications_key,
|
||||
u.description, u.avatar, u.join_date as date_created,
|
||||
u.artist_name, u.slug,
|
||||
r.name as role_name
|
||||
FROM directus_users u
|
||||
LEFT JOIN directus_roles r ON u.role = r.id
|
||||
@@ -147,7 +147,7 @@ async function migrateUsers() {
|
||||
JSON.stringify(tags),
|
||||
role,
|
||||
user.avatar,
|
||||
true, // Assume existing users are verified
|
||||
true,
|
||||
user.date_created,
|
||||
],
|
||||
);
|
||||
@@ -160,7 +160,7 @@ async function migrateUsers() {
|
||||
async function migrateUserPhotos() {
|
||||
console.log("🖼️ Migrating user photos...");
|
||||
const { rows } = await query(
|
||||
`SELECT directus_users_id as user_id, directus_files_id as file_id, sort
|
||||
`SELECT directus_users_id as user_id, directus_files_id as file_id
|
||||
FROM junction_directus_users_files`,
|
||||
);
|
||||
|
||||
@@ -173,7 +173,7 @@ async function migrateUserPhotos() {
|
||||
await query(
|
||||
`INSERT INTO user_photos (user_id, file_id, sort) VALUES ($1, $2, $3)
|
||||
ON CONFLICT DO NOTHING`,
|
||||
[row.user_id, row.file_id, row.sort || 0],
|
||||
[row.user_id, row.file_id, 0],
|
||||
);
|
||||
migrated++;
|
||||
}
|
||||
@@ -222,7 +222,7 @@ async function migrateVideos() {
|
||||
console.log("🎬 Migrating videos...");
|
||||
const { rows } = await query(
|
||||
`SELECT id, slug, title, description, image, movie, tags, upload_date,
|
||||
premium, featured, likes_count, plays_count
|
||||
premium, featured
|
||||
FROM sexy_videos`,
|
||||
);
|
||||
|
||||
@@ -244,8 +244,8 @@ async function migrateVideos() {
|
||||
video.upload_date,
|
||||
video.premium,
|
||||
video.featured,
|
||||
video.likes_count || 0,
|
||||
video.plays_count || 0,
|
||||
0,
|
||||
0,
|
||||
],
|
||||
);
|
||||
migrated++;
|
||||
@@ -329,7 +329,7 @@ async function migrateRecordings() {
|
||||
console.log("🎙️ Migrating recordings...");
|
||||
const { rows } = await query(
|
||||
`SELECT id, title, description, slug, duration, events, device_info,
|
||||
user_created as user_id, status, tags, linked_video, featured, public,
|
||||
user_created as user_id, status, tags, linked_video, public,
|
||||
original_recording_id, date_created, date_updated
|
||||
FROM sexy_recordings`,
|
||||
);
|
||||
@@ -338,9 +338,9 @@ async function migrateRecordings() {
|
||||
for (const recording of rows) {
|
||||
await query(
|
||||
`INSERT INTO recordings (id, title, description, slug, duration, events, device_info,
|
||||
user_id, status, tags, linked_video, featured, public,
|
||||
user_id, status, tags, linked_video, public,
|
||||
original_recording_id, date_created, date_updated)
|
||||
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16)
|
||||
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15)
|
||||
ON CONFLICT (id) DO NOTHING`,
|
||||
[
|
||||
recording.id,
|
||||
@@ -356,7 +356,6 @@ async function migrateRecordings() {
|
||||
recording.status,
|
||||
Array.isArray(recording.tags) ? JSON.stringify(recording.tags) : recording.tags,
|
||||
recording.linked_video,
|
||||
recording.featured,
|
||||
recording.public,
|
||||
recording.original_recording_id,
|
||||
recording.date_created,
|
||||
|
||||
Reference in New Issue
Block a user