Le categorie disabilitate e non categorizzate vengono mostrate nei menu a tendina delle categorie

È tornato nella sua ultima forma? È disabilitato e tutto:

Ma appare in vari menu a discesa di categoria. Probabilmente non è un grosso problema nel backend, ma viene anche suggerito nella ricerca:

1 Mi Piace

Non ho riproduzione di questo su main.

@j.jaffeux Riesco a riprodurlo su try.discourse.org. Posso dire che l’impostazione “Consenti argomenti non categorizzati” è disabilitata su quel forum perché “Non categorizzato” non è presente nel menu “categoria…” del compositore di argomenti.

Menu di Ricerca Avanzata

“Non categorizzato” è presente nel menu “Categorizzato” della ricerca avanzata nella pagina di ricerca.

  1. Fai clic sul seguente link per aprire la pagina di ricerca avanzata del forum di dimostrazione di Discourse nel tuo browser web:
    https://try.discourse.org/search
  2. Fai clic su “Filtri avanzati”.
    La sezione “Filtri avanzati” della pagina si espanderà.
  3. Fai clic sul menu “Tutte le categorie”.
    Il menu si aprirà.

:bug: Un elemento “Non categorizzato” è presente nel menu.

Autocompletamento Ricerca

  1. Fai clic sul seguente link per aprire il forum di dimostrazione di Discourse nel tuo browser web:
    https://try.discourse.org/
  2. Fai clic sull’icona della lente d’ingrandimento (“Cerca”) nell’angolo in alto a destra della pagina.
    Verrà aperta l’interfaccia di ricerca.
  3. Digita #u nel campo “Cerca”.
    Apparirà il menu di autocompletamento del filtro categoria.

:bug: Un elemento “Non categorizzato” è presente nel menu di autocompletamento del filtro categoria.

Autocompletamento Composizione Messaggio

  1. Se non ne hai già uno, crea un account su try.discourse.org.
  2. Accedi al tuo account su try.discourse.org.
  3. Fai clic sul seguente link per aprire il forum di dimostrazione di Discourse nel tuo browser web:
    https://try.discourse.org/
  4. Fai clic sul pulsante “Nuovo argomento” nell’angolo in alto a destra della pagina.
    Verrà aperto il compositore di argomenti.
  5. Fai clic sul campo del corpo del messaggio nel compositore di argomenti.
  6. Digita #u nel campo “Cerca”.
    Apparirà il menu di autocompletamento del filtro categoria.

:bug: Un elemento “non categorizzato” è presente nel menu di autocompletamento del filtro categoria.

Riordina Categorie

Sono anche in grado di riprodurre la presenza della categoria “Non categorizzato” nella finestra di dialogo “Riordina Categorie”. L’ho riprodotto su un forum di cui sono amministratore e dove l’impostazione “Consenti argomenti non categorizzati” è disabilitata (ovviamente non posso testarlo su try.discourse.org). Quel forum utilizza la versione di Discourse d8c855e55978d00fc63021b31ecd00a4bee9d922.

  1. Accedi con un account amministratore su un forum in cui l’impostazione “Consenti argomenti non categorizzati” è disabilitata.
  2. Apri la pagina “Categorie” (/categories).
  3. Fai clic sull’icona della chiave inglese (“Gestisci categorie”) nell’angolo in alto a destra della pagina.
    Verrà aperta la finestra di dialogo “Riordina Categorie”.

:bug: Un elemento “Non categorizzato” è presente nella finestra di dialogo.

Sono d’accordo con @manuel sul fatto che la presenza in questa finestra di dialogo sia meno grave della presenza nelle interfacce rivolte all’utente, ma ho pensato di menzionarlo dato che apparentemente non sei nemmeno in grado di riprodurre quel difetto.

3 Mi Piace

@hugh Non sono nemmeno sicuro che vogliamo mantenere a lungo termine questo pantano “non categorizzato”.

Nel corso degli anni ho cercato di liberarmene il più possibile, ma continuano a spuntare nuovi casi limite.

Secondo me dovremmo eliminare le impostazioni e permettere semplicemente alle persone di scegliere una categoria predefinita. Un componente del tema può nascondere un badge di categoria particolare per i rari casi in cui non vogliamo mostrarlo su “Generale” o simili.

2 Mi Piace

I maintainers sono stati in grado di riprodurre il difetto seguendo le procedure che ho descritto nella mia precedente risposta? Chiedo perché vedo che l’argomento ha ancora il tag needs-repro.

Se sei in grado di riprodurre il difetto, rimuovi quel tag dall’argomento in modo che sia chiaro che il rapporto è ora attuabile nel suo stato attuale.

2 Mi Piace

tieni duro compagno, è uscito dal nostro radar, stiamo dando priorità a questo per la conferma della riproduzione e l’assegnazione a un membro xp

1 Mi Piace

Per, odio dover rispondere con “prova qualcos’altro”

Ma mi chiedo, cosa ti impedisce di terminare semplicemente l’uso di “sopprimi non categorizzati” su Arduino?

Trovo questa intera funzionalità una curva di apprendimento confusa, in un universo parallelo eliminerei semplicemente l’impostazione del sito, gli argomenti hanno bisogno di una categoria, quindi avere questo universo in cui gli argomenti hanno una categoria (ma in realtà non hanno una categoria) è confuso e aggiunge davvero poco agli utenti finali dato che puoi semplicemente inserire le cose in “generale” se le persone non riescono a categorizzare.

Ti piacerebbe che ti aiutassimo a trasferire il “recupero degli argomenti non categorizzati” in una categoria “Generale”?

2 Mi Piace

Con questo intendi deselezionare l’impostazione del sito “Consenti argomenti non categorizzati”?

Se è così, allora è così che è configurato il forum Arduino (e lo è sempre stato).

Si prega di notare che, ad eccezione di “Riordina categorie” (che abbiamo già specificato non essere molto importante), ho verificato che il difetto può essere riprodotto seguendo le istruzioni che ho fornito su try.discourse.org. Quindi il forum Arduino non è direttamente rilevante per questa conversazione. Per quanto posso dire come utente normale, l’impostazione del sito “Consenti argomenti non categorizzati” è disabilitata su try.discourse.org.

Il problema segnalato qui è che la categoria Uncategorized è esposta nell’interfaccia utente sui forum che hanno quella categoria disabilitata tramite l’impostazione del sito “Consenti argomenti non categorizzati”.

Per me va bene.

Come qualcuno che ha lottato per anni per far scegliere agli utenti una categoria appropriata per i propri argomenti, posso capire perché alcuni operatori di forum troverebbero utile una funzione che consenta agli utenti l’opzione di saltare la scelta di una categoria. Tuttavia, non ho alcun interesse a utilizzare la funzione “Consenti argomenti non categorizzati” sul mio forum, quindi la rimozione della funzione non mi riguarderebbe personalmente.

Poiché non ho esperienza nell’uso della funzione “Consenti argomenti non categorizzati”, non posso commentare i meriti relativi della funzione rispetto al semplice utilizzo di una categoria normale come proponi.

Penso che sia una buona idea parlare con qualcuno che utilizza la funzione per capire se è veramente necessaria; io semplicemente non sono quella persona.

Non sono sicuro di capire cosa intendi con questo. Vorrei capire però.

Offri una qualche forma di assistenza con la categorizzazione del forum Arduino?

Se stai guardando il forum Arduino, qualcosa che potrebbe creare confusione è che abbiamo effettivamente una categoria chiamata “Non categorizzato”. Tuttavia, questa è una categoria normale che ha semplicemente quel nome, non la categoria speciale fornita dall’impostazione del sito “Consenti argomenti non categorizzati”. La nostra categoria “Non categorizzato” ha in realtà uno scopo completamente opposto alla funzione “Consenti argomenti non categorizzati”. Non è in alcun modo rilevante per l’argomento di questo rapporto di bug, ma nel caso fossi interessato al motivo per cui lo abbiamo fatto, è spiegato qui.

2 Mi Piace

Ho capito, ho appena fatto un po’ di debug locale, confermo che è riproducibile al 100% su installazioni Discourse predefinite.

Ricapitoliamo qui:

Ci sono 2 impostazioni per quanto riguarda le non categorizzate:

allow_uncategorized_topics predefinito disattivato
suppress_uncategorized_badge predefinito attivato

quando allow_uncategorized_topics è disabilitato (configurazione predefinita) ne facciamo trapelare la presenza in determinati punti.

Se provi a risolvere abilitando le non categorizzate in modo da poterle eliminare, ti viene presentato:

In Discourse questa categoria è molto strana in quanto:

  1. Deve esserci
  2. Non può essere eliminata
  3. La inseriamo in molta logica in molti punti:

Possiamo risolvere la fuga di notizie aggiungendo sempre più condizionali, probabilmente siamo già a 10 sia lato client che lato server.

Oppure possiamo risolvere alla radice, permettendo agli amministratori di eliminare la categoria, quindi scompare e non abbiamo più bisogno di controllarla.

La mia raccomandazione qui è

  1. Eliminare entrambe le impostazioni ed eliminare l’impostazione nascosta uncategorized_category_id
  2. Avere un concetto di categoria predefinita (che abbiamo già) - abbiamo già default_composer_category
  3. ‘uncategorized’ quindi non è più un concetto speciale, meno cose su cui ragionare.
  4. Avere un componente tema per coloro che devono avere una “categoria senza badge”

Il bug di ricerca corrente può essere risolto con qualcosa come

diff --git a/app/assets/javascripts/select-kit/addon/components/search-advanced-category-chooser.js b/app/assets/javascripts/select-kit/addon/components/search-advanced-category-chooser.js
index a678919d16..83a9ed27db 100644
--- a/app/assets/javascripts/select-kit/addon/components/search-advanced-category-chooser.js
+++ b/app/assets/javascripts/select-kit/addon/components/search-advanced-category-chooser.js
@@ -1,4 +1,5 @@
 import { classNames } from "@ember-decorators/component";
+import { setting } from "discourse/lib/computed";
 import CategoryChooserComponent from "select-kit/components/category-chooser";
 import {
   pluginApiIdentifiers,
@@ -7,11 +8,13 @@ import {
 
 @classNames("search-advanced-category-chooser")
 @selectKitOptions({
-  allowUncategorized: true,
+  allowUncategorized: "allowUncategorized",
   clearable: true,
   none: "category.all",
   displayCategoryDescription: false,
   permissionType: null,
 })
 @pluginApiIdentifiers("search-advanced-category-chooser")
-export default class SearchAdvancedCategoryChooser extends CategoryChooserComponent {}
+export default class SearchAdvancedCategoryChooser extends CategoryChooserComponent {
+  @setting("allow_uncategorized_topics") allowUncategorized;
+}
import { render } from "@ember/test-helpers";
import { module, test } from "qunit";
import { setupRenderingTest } from "discourse/tests/helpers/component-test";
import selectKit from "discourse/tests/helpers/select-kit-helper";
import SearchAdvancedCategoryChooser from "select-kit/components/search-advanced-category-chooser";

module(
  "Integration | Component | select-kit/search-advanced-category-chooser",
  function (hooks) {
    setupRenderingTest(hooks);

    hooks.beforeEach(function () {
      this.set("subject", selectKit());
    });

    test("respects allow_uncategorized_topics setting when false", async function (assert) {
      this.siteSettings.allow_uncategorized_topics = false;

      await render(
        <template><SearchAdvancedCategoryChooser /></template>
      );

      await this.subject.expand();

      // Uncategorized category (ID 17 in test data) should not be present when setting is false
      assert.false(
        this.subject.rowByValue(17).exists(),
        "uncategorized category is not available when allow_uncategorized_topics is false"
      );
    });

    test("shows uncategorized category when allow_uncategorized_topics is true", async function (assert) {
      this.siteSettings.allow_uncategorized_topics = true;

      await render(
        <template><SearchAdvancedCategoryChooser /></template>
      );

      await this.subject.expand();

      // Uncategorized category (ID 17 in test data) should be present when setting is true
      assert.true(
        this.subject.rowByValue(17).exists(),
        "uncategorized category is available when allow_uncategorized_topics is true"
      );
    });

    test("has correct default options", async function (assert) {
      await render(
        <template><SearchAdvancedCategoryChooser /></template>
      );

      assert.strictEqual(
        this.subject.header().label(),
        "All categories",
        "has correct default none label"
      );
    });
  }
);

Ma quello è solo il bug della ricerca avanzata, stiamo giocando a acchiappa la talpa…

3 Mi Piace