Plugin Locations 🌍

:+1:t2:

4 « J'aime »

As-tu résolu ça ?

1 « J'aime »

Le rĂ©pertoire basĂ© sur la carte utilisateur rompt l’ouverture du plugin Ember sur la carte utilisateur. Vous devez signaler ce problĂšme au propriĂ©taire de ce composant.

1 « J'aime »

J’essaie simplement d’afficher la localisation de l’utilisateur sous ses publications, cela fonctionne-t-il ?

Publications d’utilisateurs ? Ou cartes d’utilisateurs ?

Les posts, je m’en fiche des cartes, c’est possible ?

2 « J'aime »

Non, nous prenons actuellement en charge uniquement les niveaux de sujet et les emplacements des utilisateurs.

C’est dommage ! Ma communautĂ© tient beaucoup Ă  savoir d’oĂč les gens postent.

Je n’arrive pas Ă  faire fonctionner cela non plus pour les cartes utilisateur, est-ce que cela fonctionne correctement de votre cĂŽtĂ© ?

Merci

1 « J'aime »

Ce n’est pas automatisĂ© (en partie pour des raisons de confidentialitĂ©). L’utilisateur doit dĂ©finir explicitement sa localisation dans son profil. Il a la libertĂ© de choisir la localisation affichĂ©e et donc l’endroit oĂč il apparaĂźt.

Si vous souhaitez quelque chose de plus Ă©laborĂ©, il s’agit probablement d’un projet financĂ© pour mettre en Ɠuvre ce Marketplace.

1 « J'aime »

D’accord, merci. Je vais y rĂ©flĂ©chir et je reviens vers vous. Serait-il possible d’afficher la localisation (de l’utilisateur) sous le nom d’utilisateur dans les publications pour un projet financĂ© ?

2 « J'aime »

Donc, si j’utilise ce plugin Locations, je ne peux pas utiliser le plugin Follow ni le TC User Card Directory, c’est ça ? C’est un peu dommage, ce serait gĂ©nial de pouvoir utiliser les trois. Quel est le problĂšme, pourquoi le plugin Locations entre-t-il en conflit avec eux ?

2 « J'aime »

C’est le seul rĂ©pertoire de cartes d’utilisateur dont j’ai connaissance, mais des incompatibilitĂ©s peuvent survenir et surviennent effectivement.

Par exemple, quelqu’un peut remplacer un modĂšle monolithique et oublier de conserver une sortie de plugin. Nous ne pouvons pas nous prĂ©munir contre une telle action. Bien que les grands crĂ©ateurs de plugins (nous, Discourse) soient gĂ©nĂ©ralement trĂšs attentifs Ă  ne pas le faire.

3 « J'aime »

Des efforts sont-ils en cours pour faire de ce plugin un plugin officiel ?

1 « J'aime »

Bonjour,
Il y a un problÚme avec la derniÚre mise à jour. Comparing 83a6ad32...fc0da499 · discourse/discourse · GitHub
Merci ! :slight_smile:

3 « J'aime »

Salut, merci pour le rapport.

Oui, c’est un cas Ă©trange, et en rĂ©alitĂ©, je ne suis pas entiĂšrement convaincu que la faute revienne Ă  Locations (bien que nous suivions peut-ĂȘtre une mauvaise pratique ?!).

Il semble que lors de l’initialisation du plugin, une migration Discourse ait mis le modĂšle (en fait le Serializer) et la base de donnĂ©es dans un Ă©tat incohĂ©rent.

La solution est trĂšs simple :

  1. Retirez Locations de app.yml
  2. Rebuild (l’étape cruciale est la migration de la base de donnĂ©es. Une fois cela fait 
) < – je soupçonne que vous en ĂȘtes lĂ  ?.
  3. Ajoutez Ă  nouveau Locations dans app.yml
  4. Rebuild.

:tada:

3 « J'aime »

Bonjour Robert,

Excellent :heart_eyes: Merci, j’ai dĂ©commentĂ© le plugin Locations et la reconstruction s’est dĂ©roulĂ©e avec succĂšs. Tout semble fonctionner parfaitement. Merci encore pour ton aide rapide :slight_smile:

2 « J'aime »

Bonjour Robert,

Malheureusement, la derniĂšre mise Ă  jour semble bloquer la route de la page des emplacements /u/user-map?period=location. Peut-ĂȘtre Ă  cause de ce commit ? FIX: Always serialize the correct attributes for DirectoryItems (#13510) · discourse/discourse@60a7673 · GitHub

Il y a également des erreurs dans la console du navigateur et dans les journaux.

Informations

NoMethodError (méthode `each` non définie pour 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'

Pile d’appels

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>'

Merci ! :slight_smile:

3 « J'aime »

Merci pour le rapport. Si vous utilisez des plugins Pavilion, Ă©vitez de mettre Ă  jour en dehors de notre pĂ©riode de prise en charge, car nous ne sommes pas toujours disponibles pour rĂ©soudre les problĂšmes liĂ©s aux changements incompatibles. Je m’en occuperai dĂšs que possible.

3 « J'aime »

@Don OK, j’ai pris un moment aujourd’hui pour rĂ©gler cela, car j’étais vraiment sous la pression pour du travail payant, alors j’ai pensĂ© qu’il valait mieux en finir :sweat_smile:

Ça m’a pris un certain temps, je ne suis pas honteux de l’admettre, ces modifications Ă©taient assez cryptiques ! :sweat_smile:

Le résultat est le suivant : COMPATIBILITY: fix for recent major changes to user directory code · merefield/discourse-locations@8a16b16 · GitHub

Il est possible que cela soit lĂ©gĂšrement plus rapide qu’avant, comme avantage supplĂ©mentaire, car j’ai ajoutĂ© ce changement supplĂ©mentaire pour tirer parti de la nouvelle conception afin de rĂ©duire la quantitĂ© de donnĂ©es sĂ©rialisĂ©es : cut down unnecessary data · merefield/discourse-locations@66d0120 · GitHub

@markvanlan FYI

5 « J'aime »

Bonjour Robert,
Je vous remercie vraiment. Merci beaucoup pour votre travail et votre temps. :heart:
Je viens de mettre à jour et de tester
 tout fonctionne parfaitement ! :slight_smile:

5 « J'aime »