Discourse Risolto

Nella homepage, accanto a Top, Hot, Latest, ecc., come posso aggiungere Unsolved?

Puoi usare il componente Custom Top Navigation Links per aggiungere link personalizzati accanto a quelli configurati nelle impostazioni del sito. Per filtrare l’elenco degli argomenti per argomenti irrisolti, puoi aggiungere solved=no. Ad esempio \u003chttps://meta.discourse.org/?solved=no\u003e

6 Mi Piace

Incontrando lo stesso errore di plugin incompatibile menzionato sopra, ma stiamo usando la versione ufficiale:

[Dettagli=“Log”]

********************************************************
*** Si prega di essere pazienti, i passaggi successivi potrebbero richiedere del tempo ***
********************************************************
Cycling Unicorn, per liberare memoria
Riavvio unicorn pid: 551
In attesa che Unicorn venga ricaricato.
In attesa che Unicorn venga ricaricato..
In attesa che Unicorn venga ricaricato...
In attesa che Unicorn venga ricaricato....
In attesa che Unicorn venga ricaricato.....
In attesa che Unicorn venga ricaricato......
In attesa che Unicorn venga ricaricato.......
Arrestando 3 worker di Unicorn, per liberare memoria
Arrestando la coda di job per recuperare memoria, il pid principale è 3004191
$ cd /var/www/discourse/plugins/docker_manager  git fetch --tags --prune-tags --prune --force
$ cd /var/www/discourse/plugins/docker_manager  git reset --hard HEAD@{upstream}
HEAD è ora a 930ec25 Attiva di nuovo specifiche di fumo
$ bundle install --retry 3 --jobs 4
Bundle completato! 146 dipendenze Gemfile, ora installate 189 gemmi.
I gemmi nei gruppi 'test' e 'development' non sono stati installati.
Le gemmi incluse sono installate in `./vendor/bundle`
3 gemmi installate su cui si basa direttamente si stanno cercando finanziamenti.
  Eseguire `bundle fund` per i dettagli
$ if [ -f yarn.lock ]; then yarn install; else CI=1 pnpm install; fi
Scope: tutti i 17 progetti workspace
File di blocco aggiornato, passo di risoluzione saltato
Già aggiornato
```Fatto in 3.2s
$ LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all
controllo della versione compatibile di discourse-calendar: 8d09cf8503b78f4c72b47a7319c0f4b9ad0247e7
HEAD è ora a 8d09cf8 DEV: aggiornamento delle regioni (#717)
controllo della versione compatibile di discourse-reactions: f87583d9054421869ba0de16c24ad15e32bbebe7
HEAD è ora a f87583d DEV: Aggiungi specifica di sistema per verificare che le funzioni principali funzionino correttamente (#361)
controllo della versione compatibile di discourse-solved: 4f0234f5be3aaa77db277e0f224cd9750d2713cd
HEAD è ora a 4f0234f DEV: Aggiungi specifica di sistema per verificare che le funzioni principali funzionino correttamente (#357)
discourse-spoiler-alert è già alla versione compatibile più recente
docker_manager è già alla versione compatibile più recente
$ SKIP_POST_DEPLOYMENT_MIGRATIONS=1 bundle exec rake multisite:migrate
	81: da /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/bundle:25:in `<main>'
	80: da /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/bundle:25:in `load'
	79: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/exe/bundle:20:in `<top (required)>'
	78: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors'
	77: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/exe/bundle:28:in `block in `<top (required)>'
	76: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rb:29:in `start'
	75: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/base.rb:584:in `start'
	74: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rb:35:in `dispatch'
	73: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor.rb:538:in `dispatch'
	72: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
	71: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/command.rb:28:in `run'
	70: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rb:452:in `exec'
	69: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rb:23:in `run'
	68: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rb:59:in `kernel_load'
	67: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rb:59:in `load'
	66: da /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/rake:25:in `<top (required)>'
	65: da /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/rake:25:in `load'
	64: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/exe/rake:27:in `<top (required)>'
	63: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:80:in `run'
	62: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:214:in `standard_exception_handling'
	61: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:83:in `block in run'
	60: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:132:in `top_level'
	59: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:147:in `run_with_threads'
	58: da /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rb:138:in `block in top_level'
3 Mi Piace

Per quanto mi riguarda, ho installato il plugin Solved e l’ho aggiornato in precedenza oggi tramite l’interfaccia utente e tutto è andato a buon fine. :+1:


Avrei dovuto controllare prima di pubblicare… :slight_smile: Sembra che nel frattempo sia stato aggiunto un nuovo commit per Solved. Lasciami fare una ricostruzione da riga di comando solo per verificare e confermare che tutto vada a buon fine.

ETA: @Frully La mia ricostruzione (incluso Solved) ha avuto successo :partying_face:

2 Mi Piace

Per aggiungere a quanto detto da Jam. Anche io non ho avuto problemi con Solved

Se questa è la prima volta che installi Solved, verifica che il tuo indirizzo GitHub sia corretto.

Se puoi, condividi anche se stai utilizzando Stable o la versione di Test Raccomandata

Se puoi, postare una parte della sezione plugin del tuo app.yml potrebbe essere utile.

2 Mi Piace

Grazie a entrambi per aver verificato. Ora che è aggiornato, mi sento più sicuro nel riattivare il plugin. Vi informerò quando avrò tempo per testare e annotare i risultati.

3 Mi Piace

Stiamo ancora riscontrando questo problema (anche se, dato che nessun altro sembra averlo segnalato, inizio a chiedermi se siamo solo noi?)

Scavando un po’ più a fondo, ho scoperto che l’aggiunta di un padding-top e padding-bottom di 15px alla classe CSS topic-statuses aggira il problema. Spero che un manutentore del plugin sia in grado di risolvere questo problema in modo più permanente.

3 Mi Piace

Penso che questo sia collegato a Discourse Tooltips. Non si tratta solo delle caselle irrisolte sul tuo sito, ma anche di eventuali puntine e lucchetti.

Penso che ci siano un paio di altre segnalazioni:

5 Mi Piace

Da quando abbiamo aggiornato discourse, i webhook risolti sono invertiti.

Se risolvo un argomento, il webhook verrà inviato in questo modo:

    "can_accept_answer": true,
    "can_unaccept_answer": false,
    "accepted_answer": false,
    "topic_accepted_answer": null

e se annullo la risposta, è il contrario

:partying_face: Questo plugin è ora incluso nel core di Discourse come parte di Bundling more popular plugins with Discourse core. Se stai auto-ospitando e utilizzi il plugin, devi rimuoverlo dal tuo app.yml prima del tuo prossimo aggiornamento.

3 Mi Piace

Ha un errore con la versione più recente di discourse

Devo disabilitarlo per ricostruire l'app (discourse)

È ora incluso nel core

3 Mi Piace

Home > I post nella categoria mostreranno argomenti risolti come argomenti irrisolti

Ho bisogno di altre impostazioni?

1 Mi Piace

È possibile aggiungere una voce in Filtri avanzati nell’area di ricerca di Discourse per mostrare solo quelli non risolti?

puoi usare /filter e in:solved / in:unsolved

3 Mi Piace

La mia comprensione è che possiamo utilizzare il trigger “first_accepted_solution” da Solved quando creiamo un’automazione. Un’automazione con questo trigger verrebbe eseguita una sola volta per ogni argomento che viene risolto o si tratta della prima soluzione accettata da un utente e non di un argomento? Non sono sicuro che la domanda abbia senso, mi scuso.

“First-accepted-solution” attiva la prima volta che un post di un utente viene selezionato come soluzione di qualsiasi argomento.


Puoi, ad esempio, usarlo per ringraziare un utente per aver aiutato qualcuno la prima volta che lo ha fatto.

Ciao @Moin,

Grazie mille per il chiarimento, ha senso.

Domanda di follow-up: esiste un trigger “accepted-solution” o solo “first-accepted-solution”?

Motivazione: Vorrei creare un custom automation che crei un Post ogni volta che un Topic viene risolto (un Post viene contrassegnato come soluzione)

Ho provato con “first-accepted-solution” ma funziona solo una volta, come posso vedere ora, è previsto. Qualsiasi raccomandazione o idea?

Senza sapere cosa vuoi fare con quel post o perché ti serve, è un po’ difficile suggerirti qualcosa di utile.
Vuoi semplicemente sapere quali post sono stati contrassegnati come soluzione?

Allora potresti usare una query di Data Explorer e lo script “Pianifica un post in un argomento con i risultati di Data Explorer”. Potresti, ad esempio, eseguire una query che restituisca le soluzioni degli ultimi 10 minuti ogni 10 minuti. Immagino che potresti anche eseguirla più spesso, ma non sono sicuro di quanto questo aggiunga al server. Ma anche se la eseguissi ogni minuto, non otterresti necessariamente un post per ogni soluzione. Forse ci sono 2 argomenti risolti entro il minuto. Inoltre, il post risultante può essere personalizzato solo in misura limitata. (Naturalmente, puoi personalizzare i testi utilizzati come qualsiasi altro testo, ma dovresti tenere presente che dovrai farlo per ogni post modificato dall’automazione con questo script. Quindi non funziona davvero se vuoi essere troppo individuale.)

Semplice esempio di un post creato da quell’automazione

Il contenuto della tabella dipende dalla query. È possibile espandere la query, ad esempio, per visualizzare un link all’argomento o alla soluzione. L’ho mantenuta semplice per dimostrare come funziona generalmente la funzionalità.

La query che ho usato
SELECT
  dst.created_at AS solution_accepted_at,
  dst.topic_id,
  dst.answer_post_id,
  dst.accepter_user_id
FROM discourse_solved_solved_topics dst
WHERE dst.created_at >= NOW() - INTERVAL '10 minutes'
ORDER BY dst.created_at DESC
1 Mi Piace

Ciao @Moin ,

Grazie mille per la tua risposta :slight_smile:

È fantastico, ho testato e ha funzionato - grazie alla tua risposta:

Inoltre, non è ancora quello che stavo cercando.
Scusa se non sono stato chiaro nella mia precedente domanda.

Quello che sto cercando di fare è creare un’Automazione che creerà un post (da un utente di sistema) ogni volta che un Topic viene risolto. In questo Topic, il Post appena generato conterrà un sondaggio (il sondaggio sarà il markdown dei Sondaggi di Discourse)