Nuovo argomento non predefinito su non categorizzato

Ciao,

Quando uno dei miei utenti (ruolo ‘leader’) tenta di creare un nuovo argomento, la categoria è vuota e se clicca sul pulsante crea argomento riceve un errore 404:

Quando io (staff) tento di creare un nuovo argomento, ho ancora la categoria vuota, ma ricevo un errore You supplied invalid parameters to the request: category

Ho trovato un’impostazione:

Consenti la creazione di argomenti senza categoria. ATTENZIONE: Se ci sono argomenti non categorizzati, devi ricategorizzarli prima di disattivare questa opzione.

Non ricordo di averla abilitata, ma è abilitata - credo sia un’impostazione predefinita, ma non ne sono sicuro.

Ho dato un’occhiata alle impostazioni della categoria non categorizzata:

Questa categoria è speciale. Viene utilizzata come categoria predefinita per i nuovi argomenti a cui non è stata selezionata una categoria. Se desideri impedire questo comportamento e forzare la selezione della categoria, disabilita l’impostazione qui. Se desideri modificare il nome o la descrizione, vai su Personalizza / Contenuti di testo.

Nel breve termine, sono preoccupato che i nostri utenti stiano avendo una brutta esperienza e non riescano a postare. (Errore 404)

Ho provato a cercare su meta.discourse.org per trovare risposte alle mie domande:

Domanda 1: Perché il campo categoria è vuoto quando provo a creare un nuovo argomento? (non è vuoto quando posto su meta.discourse.org)

Domanda 2: Se ‘Consenti la creazione di argomenti senza categoria.’ è abilitato, perché ricevo un errore? (Sospetto che ‘Non categorizzato’ significhi in realtà ‘senza categoria’, ma è descritto come ‘[…] la categoria predefinita per i nuovi argomenti a cui non è stata selezionata una categoria.’

In realtà mi piace il comportamento di meta.discourse.org; dove per impostazione predefinita viene selezionato ‘generale’ invece di non categorizzato, ma non sono sicuro di quale sia l’approccio corretto;
a) rinominare ‘Non categorizzato’ in ‘generale’. (nota: ho trovato un post - del 2016 - che indicava che questa era una cattiva idea, e paragonava ‘Non categorizzato’ a ‘null’ nel database.)

OPPURE

b) Creare una categoria ‘generale’, spostare tutti i non categorizzati in ‘generale’ (come?), impostare ‘generale’ come predefinita per i nuovi post e disabilitare ‘Consenti la creazione di argomenti senza categoria.’

Qualsiasi consiglio o indicazione sulla documentazione pertinente è apprezzato.

Cordiali saluti,

Stephen

PS A titolo informativo, siamo un progetto OSS e questa è un’istanza discourse gratuita gentilmente offerta dalle persone fantastiche di https://www.discourse.org

Ho notato anche questo. Ma ho disabilitato “non categorizzato” ma dovrebbe comunque selezionare la categoria principale in quel caso. Mostra lo stesso campo di categoria (vuoto) come predefinito.

1 Mi Piace

Grazie @MarcP!

Penso che questo possa essere un bug, ma non volevo pre-giudicare.
s.

Ciao Stephen,

Quale versione di Discourse sta utilizzando il tuo sito?

La “categoria” non categorizzata è stata recentemente sostituita da una nuova categoria generale. È apparsa una nuova categoria con quel nome sul tuo sito? Avevi una categoria generale in precedenza?

Sì, prima avevo una categoria generale. Sto eseguendo la build più recente ma l’ho notato da qualche settimana.

Sì, anche per me questo sembra essere un comportamento recente.

Questo avrebbe dovuto essere risolto da questo commit, ma posso vedere che il tuo sito è già stato aggiornato per includerlo:

C’è la possibilità che non abbia coperto ogni caso. Incaricheremo qualcuno di esaminarlo. :+1:

5 Mi Piace

Hmm, quando abilito consenti argomenti non categorizzati, la categoria non categorizzata appare ancora nella mia pagina delle categorie. Anche dopo aver rinominato la mia generale.

La categoria Uncategorized non è più un’impostazione predefinita del sito da quando la categoria General è stata abilitata su Discourse. Nelle nuove installazioni di Discourse è presente una categoria predefinita General. Quindi, quando apri il composer, la categoria selezionata automaticamente è General. Tuttavia, nelle installazioni più vecchie in cui non hai la categoria general, penso che qualsiasi categoria possa essere la categoria general. Penso che significhi solo in questo caso la categoria predefinita del composer. Quindi non sarà sufficiente se crei una categoria con il nome General. Dovrai anche impostare l’ID della categoria con l’impostazione nascosta del sito general_category_id.

Ad esempio:
Se crei una nuova categoria per questo scopo General. Il nome della categoria può essere ad esempio: General e dovrai controllare anche l’ID della categoria. Ora in questo esempio sarà 9.

La categoria è stata creata con successo ma se apri il composer non sarà la categoria predefinita, quindi impostiamo l’impostazione nascosta del sito.

Imposta category_id alla categoria general

Nota: category_id=9 è solo in questo esempio il corretto ID della categoria. La tua categoria appena creata probabilmente avrà un numero di category_id diverso.

cd /var/discourse
./launcher enter app
rails c
SiteSetting.general_category_id=9
exit
exit

Dopo questo, quando apri il composer, la categoria category_id=9General sarà quella predefinita.

2 Mi Piace

Hai ricostruito da quando hai rinominato general?

Non abbiamo rinominato “general”, abbiamo solo “uncategorized” e non l’abbiamo rinominato.

Discourse aggiornato: 14 ore fa

siamo un progetto OSS e questa è un’istanza Discourse gratuita (gentilmente fornita dalle persone fantastiche di https://www.discourse.org) quindi gli aggiornamenti avvengono automaticamente senza il nostro intervento

La categoria appare ancora vuota

@Don

Grazie: questa è un’istanza ospitata, quindi non sono a conoscenza di un modo per ottenere l’accesso alla shell per impostare l’impostazione del sito nascosta.

Saluti
Stephen

1 Mi Piace

È il fine settimana per la maggior parte del Team, ma possiamo risolvere il problema non appena qualcuno sarà disponibile. :slightly_smiling_face::+1:

4 Mi Piace

Voglio solo assicurarmi - in modo da poter ridurre al minimo l’interruzione per gli utenti finali:

  1. Devo creare una categoria ‘Generale’ in preparazione?

  2. Dovrò spostare tutti gli argomenti con la categoria ‘Non categorizzato’ in generale dopo che la modifica della configurazione è stata apportata?

Grazie per il tuo aiuto

Stephen

Se stai puntando a questo risultato invece di #uncategorized come predefinito, dovresti essere al sicuro creando una nuova categoria #general, spostando tutti i tuoi argomenti #uncategorized al suo interno usando lo strumento di massa, e quindi disabilitando allow uncategorized topics nelle tue impostazioni di amministrazione in preparazione (anche se questo non risolverà il menu a discesa).

Tuttavia, questo richiederà solo un paio di minuti a un membro del team per essere risolto insieme all’aggiornamento manuale della tua impostazione nascosta general_category_id, quindi potresti semplicemente voler aspettare. :slightly_smiling_face:

4 Mi Piace

Grazie, questa spiegazione è molto buona e ho risolto. Penso che questo argomento dovrebbe essere in Support poiché non è un bug e suggerisco che la tua risposta venga contrassegnata come soluzione.

1 Mi Piace

Giusto per capire

  • Le nuove istanze di discourse hanno una categoria Generale che è quella predefinita quando si pubblica un nuovo argomento.

  • la nostra istanza proviene da un periodo in cui la categoria predefinita era quella ‘non categorizzata’.
    La soluzione è impostare SiteSetting.general_category_id sull’ID della categoria Non categorizzata.

Questo comando:

SiteSetting.general_category_id=<nuovo ID categoria>

  • Le istanze che hanno ancora la categoria Non categorizzata dovrebbero impostare l’impostazione sopra indicata durante l’aggiornamento.
1 Mi Piace

Tutto risolto. Siamo passati all’utilizzo di ‘Generale’ invece di non categorizzato e il sistema fornisce correttamente una categoria predefinita.

Grazie a tutti coloro che hanno contribuito a diagnosticare questo problema, e un ringraziamento speciale a @fzngagan per averlo risolto in modo così rapido e professionale.

Cordiali saluti

Stephen

5 Mi Piace

Per chiunque abbia eliminato manualmente la categoria Generale predefinita prima di questa correzione

Ora è disponibile una correzione aggiuntiva che pulirà SiteSetting.general_category_id se è impostato su una categoria che non esiste:

3 Mi Piace