Come aggiungere i dati dell'utente al serializzatore del post?

Sto cercando di creare un tema o un plugin che mi permetta di aggiungere e aggiornare i link nel widget dei post. Penso che l’approccio più semplice sarebbe includere il campo website dal profilo utente nel serializzatore dei post, ma non riesco a farlo funzionare correttamente.

Ho capito come aggiornare il serializzatore dei post per aggiungere dati semplici, ma non riesco a capire come aggiungere dati che provengono dall’oggetto User che ha creato il post. Sono anche preoccupato di farlo in un modo che causi una query al database per ogni utente/post.

Ci sono plugin esistenti che dovrei consultare per avere indicazioni? O, ancora meglio, esiste un modo per aggiungere i dati dell’utente del post al serializzatore dei post sovrascrivendo i widget in un componente del tema senza ricorrere a un plugin?

Grazie!

Penso di averlo fatto funzionare, almeno in una misura accettabile. Non sono riuscito a capire come aggiungere il campo website al serializzatore dei post, e sembra che non possa aggiungere un campo chiamato user_custom_fields (forse è riservato). Sono riuscito ad aggiungere un campo user_extra_fields che contiene tutti i user.custom_fields. Poi nei miei componenti del tema posso accedere a quei campi quando necessario (anche se è un po’ strano dover usare un campo chiamato user_field_1).

Quanto segue ha fatto ciò di cui avevo bisogno:

after_initialize do
  add_to_serializer(:post, :user_extra_fields, false) {
    return object.user.custom_fields
  }
end