# Ripristina password con file ruby personalizzato

**URL:** https://meta.discourse.org/t/reset-password-with-custom-ruby-file/280184
**Category:** Development
**Created:** [26 Settembre 2023, 3:16pm UTC](https://meta.discourse.org/t/reset-password-with-custom-ruby-file/280184 "2023-09-26T15:16:32Z")
**Posts on this page:** 1
**Showing post:** 10

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [27 Settembre 2023, 7:06am UTC](https://meta.discourse.org/t/reset-password-with-custom-ruby-file/280184/10 "2023-09-27T07:06:28Z")

</div>

> [@Hitesh\_Sharma](#):
>
> quindi creato un  
> il campo personalizzato in discourse con il nome import\_pass

Questo [esplicitamente](https://meta.discourse.org/t/drupal-password-migrate-into-discourse-with-discourse-migrate-password-plugin/279694/2?u=rgj) _non_ fa parte dei passaggi.

C’è una differenza tra la creazione di un campo utente con quel nome e l’avere un campo personalizzato con quel nome. Quindi l’hash viene memorizzato nel posto sbagliato.

Il problema è che penso che quest’ultimo (un campo personalizzato) non sia accessibile tramite l’API.  
Penso che il modo migliore per procedere sia avere del codice personalizzato una tantum che sposti il contenuto del campo utente nell’effettivo campo personalizzato.

(Ho considerato di modificare il plugin in modo che esamini anche il campo utente, ma penso che esporre questi hash all’interfaccia utente sia un rischio per la sicurezza, quindi non lo farò).

Questo funzionerà, eseguilo da una console rails (ti taggo in modo che tu veda la modifica @Hitesh_Sharma)

```rb
ufkey = "user_field_#{UserField.find_by(name: 'import_pass').id}"
User.all.each do |u|
  if u.custom_fields.key?(ufkey)
    u.custom_fields[:import_pass] = u.custom_fields[ufkey]
    u.custom_fields.delete(ufkey)
    u.save_custom_fields
  end
end

```

---

_[View the full topic](https://meta.discourse.org/t/reset-password-with-custom-ruby-file/280184)._
