![]()
Hai risolto?
La directory basata sulla User Card interrompe il plugin outlet di Ember sulla User Card. Devi segnalarlo al proprietario di quel componente.
Sto solo cercando di far visualizzare la posizione dell’utente sotto i post degli utenti, funziona?
Post degli utenti? O carte utente?
Post, non mi preoccupano le card, è possibile?
No, al momento supportiamo solo i livelli di argomento e le posizioni degli utenti.
Ok, che peccato! La mia community è molto interessata a sapere da dove le persone pubblicano.
Non riesco a farlo funzionare nemmeno per le schede degli utenti, funziona correttamente?
Grazie
Non è automatizzato (in parte per motivi di privacy). Un utente deve impostare esplicitamente la propria posizione nel proprio profilo. Ha discrezionalità sulla posizione scelta e, di conseguenza, su dove appare.
Se desideri qualcosa di più elaborato, stiamo probabilmente parlando di un progetto finanziato per implementare quel Marketplace
Ok, grazie. Ci penserò e ti farò sapere. Saresti in grado di mostrare la posizione (dell’utente) sotto il nome dell’utente nei post per un progetto finanziato?
Quindi, se uso questo plugin Locations, non posso usare il plugin Follow né il TC User Card Directory, vero? Un peccato, sarebbe fantastico poter usare tutti e tre. Qual è il problema, perché il plugin Locations entra in conflitto con loro?
Conosco solo la directory User Card, ma l’incompatibilità può verificarsi e di fatto si verifica.
Ad esempio: qualcuno può sovrascrivere un modello monolitico e dimenticare di mantenere un plugin outlet. Non possiamo proteggerci da chi agisce in questo modo. Anche se i principali sviluppatori di plugin (noi, Discourse) di solito fanno molta attenzione a non farlo.
Ci sono sforzi per rendere questo plugin ufficiale?
Ciao,
C’è un problema con l’ultimo aggiornamento: Comparing 83a6ad32...fc0da499 · discourse/discourse · GitHub
Grazie! ![]()
Ehi, grazie per la segnalazione.
Sì, è una situazione strana e, in realtà, non sono del tutto convinto che sia colpa di Locations (anche se potremmo star seguendo una cattiva pratica?!).
Sembra che durante l’inizializzazione del plugin, una migrazione di Discourse abbia causato uno stato inconsistente tra il modello (in realtà il Serializer) e il database.
La soluzione è davvero semplice:
- Rimuovi Locations da app.yml
- Ricompila (il passaggio cruciale è la migrazione del database. Una volta completata…) < – sospetto tu sia qui?
- Aggiungi di nuovo Locations in app.yml
- Ricompila.
![]()
Ciao Robert,
Ottimo
Grazie, ho sbloccato il plugin Locations e la ricostruzione è andata a buon fine. Sembra che tutto funzioni perfettamente. Grazie ancora per il rapido aiuto ![]()
Ciao Robert,
Purtroppo l’ultimo aggiornamento sembra bloccare la rotta della pagina delle Locations /u/user-map?period=location. Forse è colpa di questo commit? FIX: Always serialize the correct attributes for DirectoryItems (#13510) · discourse/discourse@60a7673 · GitHub
Ci sono anche alcuni errori nella console del browser e nei log.
info
NoMethodError (undefined method `each' for nil:NilClass)
app/serializers/directory_item_serializer.rb:41:in `attributes'
app/controllers/application_controller.rb:494:in `serialize_data'
app/controllers/application_controller.rb:397:in `block in with_resolved_locale'
app/controllers/application_controller.rb:397:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:355:in `call'
config/initializers/008-rack-cors.rb:25:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:177:in `call'
backtrace
app/serializers/directory_item_serializer.rb:41:in `attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:480:in `_serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:359:in `serializable_hash'
active_model_serializers (0.8.4) lib/active_model/array_serializer.rb:89:in `block in _serializable_array'
active_model_serializers (0.8.4) lib/active_model/array_serializer.rb:79:in `map'
active_model_serializers (0.8.4) lib/active_model/array_serializer.rb:79:in `_serializable_array'
active_model_serializers (0.8.4) lib/active_model/array_serializer.rb:73:in `serializable_array'
active_model_serializers (0.8.4) lib/active_model/array_serializer.rb:53:in `as_json'
app/controllers/application_controller.rb:494:in `serialize_data'
plugins/discourse-locations/lib/users_map.rb:15:in `index'
actionpack (6.1.3.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (6.1.3.2) lib/abstract_controller/base.rb:228:in `process_action'
actionpack (6.1.3.2) lib/action_controller/metal/rendering.rb:30:in `process_action'
actionpack (6.1.3.2) lib/abstract_controller/callbacks.rb:42:in `block in process_action'
activesupport (6.1.3.2) lib/active_support/callbacks.rb:117:in `block in run_callbacks'
app/controllers/application_controller.rb:397:in `block in with_resolved_locale'
i18n (1.8.10) lib/i18n.rb:314:in `with_locale'
app/controllers/application_controller.rb:397:in `with_resolved_locale'
activesupport (6.1.3.2) lib/active_support/callbacks.rb:126:in `block in run_callbacks'
activesupport (6.1.3.2) lib/active_support/callbacks.rb:137:in `run_callbacks'
actionpack (6.1.3.2) lib/abstract_controller/callbacks.rb:41:in `process_action'
actionpack (6.1.3.2) lib/action_controller/metal/rescue.rb:22:in `process_action'
actionpack (6.1.3.2) lib/action_controller/metal/instrumentation.rb:34:in `block in process_action'
activesupport (6.1.3.2) lib/active_support/notifications.rb:203:in `block in instrument'
activesupport (6.1.3.2) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport (6.1.3.2) lib/active_support/notifications.rb:203:in `instrument'
actionpack (6.1.3.2) lib/action_controller/metal/instrumentation.rb:33:in `process_action'
actionpack (6.1.3.2) lib/action_controller/metal/params_wrapper.rb:249:in `process_action'
activerecord (6.1.3.2) lib/active_record/railties/controller_runtime.rb:27:in `process_action'
actionpack (6.1.3.2) lib/abstract_controller/base.rb:165:in `process'
actionview (6.1.3.2) lib/action_view/rendering.rb:39:in `process'
rack-mini-profiler (2.3.2) lib/mini_profiler/profiling_methods.rb:111:in `block in profile_method'
actionpack (6.1.3.2) lib/action_controller/metal.rb:190:in `dispatch'
actionpack (6.1.3.2) lib/action_controller/metal.rb:254:in `dispatch'
actionpack (6.1.3.2) lib/action_dispatch/routing/route_set.rb:50:in `dispatch'
actionpack (6.1.3.2) lib/action_dispatch/routing/route_set.rb:33:in `serve'
actionpack (6.1.3.2) lib/action_dispatch/journey/router.rb:50:in `block in serve'
actionpack (6.1.3.2) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (6.1.3.2) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (6.1.3.2) lib/action_dispatch/routing/route_set.rb:842:in `call'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
rack (2.2.3) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.3) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.3) lib/rack/head.rb:12:in `call'
actionpack (6.1.3.2) lib/action_dispatch/http/permissions_policy.rb:22:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:355:in `call'
config/initializers/008-rack-cors.rb:25:in `call'
rack (2.2.3) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.3) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/cookies.rb:689:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
activesupport (6.1.3.2) lib/active_support/callbacks.rb:98:in `run_callbacks'
actionpack (6.1.3.2) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/actionable_exceptions.rb:18:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
logster (2.9.6) lib/logster/middleware/reporter.rb:43:in `call'
railties (6.1.3.2) lib/rails/rack/logger.rb:37:in `call_app'
railties (6.1.3.2) lib/rails/rack/logger.rb:28:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/request_id.rb:26:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
rack (2.2.3) lib/rack/method_override.rb:24:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.3) lib/rack/sendfile.rb:110:in `call'
actionpack (6.1.3.2) lib/action_dispatch/middleware/host_authorization.rb:92:in `call'
rack-mini-profiler (2.3.2) lib/mini_profiler/profiler.rb:384:in `call'
message_bus (3.3.6) lib/message_bus/rack/middleware.rb:61:in `call'
lib/middleware/request_tracker.rb:177:in `call'
railties (6.1.3.2) lib/rails/engine.rb:539:in `call'
railties (6.1.3.2) lib/rails/railtie.rb:207:in `public_send'
railties (6.1.3.2) lib/rails/railtie.rb:207:in `method_missing'
rack (2.2.3) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.3) lib/rack/urlmap.rb:58:in `each'
rack (2.2.3) lib/rack/urlmap.rb:58:in `call'
unicorn (6.0.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.0.0) lib/unicorn/http_server.rb:732:in `worker_loop'
unicorn (6.0.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.0.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.0.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/2.7.0/bin/unicorn:23:in `load'
vendor/bundle/ruby/2.7.0/bin/unicorn:23:in `<main>'
Grazie! ![]()
Grazie per la segnalazione. Se si utilizzano i plugin Pavilion, si prega di evitare aggiornamenti al di fuori del periodo di supporto, poiché non possiamo sempre essere disponibili per risolvere le modifiche che causano interruzioni. Valuterò la situazione non appena possibile.
@Don OK, ho trovato il tempo per sistemare questa cosa oggi, dato che sono davvero sotto pressione per del lavoro a pagamento, quindi ho pensato che fosse meglio risolvere subito ![]()
Ci è voluto un po’, non me ne vergogno a dirlo, quelle modifiche erano piuttosto criptiche! ![]()
Il risultato è questo: COMPATIBILITY: fix for recent major changes to user directory code · merefield/discourse-locations@8a16b16 · GitHub
È possibile che questo sia leggermente più veloce di prima come beneficio aggiuntivo, dato che ho apportato anche questa ulteriore modifica per sfruttare il nuovo design e ridurre la quantità di dati serializzati: cut down unnecessary data · merefield/discourse-locations@66d0120 · GitHub
@markvanlan per tua informazione
Ciao Robert,
apprezzo davvero molto. Grazie mille per il tuo lavoro e il tuo tempo. ![]()
Ho appena aggiornato e testato… tutto funziona alla grande! ![]()

