Permalink.create(url: /my/path, post_id: 123) ne fonctionne plus

Ce commit UX: redesign admin permalinks page (#29634) · discourse/discourse@42b1ca8 · GitHub

semble avoir cassé le comportement attendu de Permalink.create. Au lieu de pouvoir l’appeler avec un post_id ou un topic_id comme cela fonctionnait autrefois (et c’est ce à quoi un programmeur Ruby s’attendrait ?), vous devez maintenant l’appeler comme ceci :

          Permalink.create!(url: "/my/path/#{import_id}.html", permalink_type_value: pcf.post_id, permalink_type: "post")

Cela casse tous les scripts d’importation qui créent des permaliens ( ./vanilla_mysql.rb ./zendesk.rb ./muut.rb ./vbulletin3.rb ./jforum.rb ./ipboard.rb ./bbpress.rb ./answerhub.rb ./vbulletin.rb ./mylittleforum.rb ./nodebb/nodebb.rb./telligent.rb ./mybb.rb ./question2answer.rb./smf2.rb ./vbulletin5.rb ./phpbb3/importers/permalink_importer.rb ./phorum.rb./answerbase.rb./drupal.rb./zendesk_api.rb)
Et les appels comme find_or_create_by ne fonctionnent plus non plus (cassant vbulletin3, smf1, xenforo, et getsatisfaction).

Est-ce attendu ?

Il semble que les tests aient également été modifiés pour supporter ce nouveau comportement, alors peut-être que oui ?

6 « J'aime »

J’ai créé une PR avec une solution possible :

7 « J'aime »

Ce sujet a été automatiquement fermé 2 jours après la dernière réponse. Les nouvelles réponses ne sont plus autorisées.