Migrare contenuti specifici Xenforo

Ciao Discourse comm,

Ho molti contenuti da un vecchio database xenforo che voglio importare, ma ci sono alcune cose che non voglio fare:

Idealmente, voglio importare solo i thread e il primo post di ogni thread, voglio anche riassegnare l’autore del thread a un forum/account utente Discourse diverso che ho già creato. è possibile in modo abbastanza semplice?

1 Mi Piace

modifica solo l’SQL nello script di importazione

        SELECT p.post_id id,
               t.thread_id topic_id,
               #{@prefix_as_category ? "t.prefix_id" : "t.node_id"} category_id,
               t.title title,
               t.first_post_id first_post_id,
               t.view_count,
               p.user_id user_id,
               p.message raw,
               p.post_date created_at
        FROM #{TABLE_PREFIX}post p,
             #{TABLE_PREFIX}thread t
        WHERE p.thread_id = t.thread_id
        AND p.message_state = 'visible'
        AND t.discussion_state = 'visible'
        ORDER BY p.post_date
        LIMIT #{BATCH_SIZE}" # needs OFFSET

aggiungi AND p.post_id = t.first_post_id alla clausola WHERE

Cambia

mapped[:user_id] = user_id_from_imported_user_id(m["user_id"]) || -1

in

mapped[:user_id] = xxx

dove xxx è l’ID utente di Discourse a cui vuoi assegnare gli argomenti.

3 Mi Piace

@RGJ grazie per la rapida risposta, non potresti mostrarmi l’istruzione SQL con la correzione corretta, ho provato a includere AND p.post_id = t.first_post_id nella clausola WHERE ma sto ricevendo errori di convalida SQL sull’istruzione
oh e dov’è questo script di importazione?! grazie per avermi spiegato tutto, lo apprezzo

1 Mi Piace

Ho passato ore a provarci e non sono arrivato da nessuna parte, non esiste un supporto a pagamento con Discourse per questo tipo di cose?

2 Mi Piace

Potresti probabilmente creare un argomento in Marketplace.

1 Mi Piace

Sto riscontrando questo errore:

cannot load such file -- /var/discourse/config/environment

e in base.rb, riga 16, c’è questo:

require_relative "../../config/environment"

nulla in alcun tutorial di importazione/migrazione menziona il fatto che questo non esista.