Importar campos personalizados de usuário com import_scripts Ruby


Criei o campo DrupalID a partir dos campos de usuário e agora quero importar dados para ele

create_users(@users_json) do |u|
      {
#        id: u["uid"],
#        name: u["name"],
#        email: u["mail"],#
#       custom_fields: {
#          '1':u["uid"],
#          'DrupalID':u["uid"]
#        },


        id: 2037,
        name: "Test 7",
        email: "test7@gmail.com",
        custom_fields: {
          '1':"test",
          'DrupalID':"test"
        },

        created_at: Time.zone.at(u["created"].to_i),
      }

Isso é uma pergunta ou uma resposta? Você está dizendo que seu código funciona?

Sim, o código funciona, mas não para campos personalizados. Quero atualizar campos personalizados também.

Procure nos outros scripts de importador por "custom_field". Tenho certeza de que existem exemplos; tenho quase certeza de que já fiz isso antes.

1 curtida

Sim, verifiquei, mas não temos nenhum exemplo fornecido de arquivo JSON e nome de campo (o que precisamos usar)

Também tentei importar com CSV, mas tenho o mesmo problema (arquivos de exemplo ausentes)

Apenas encontre qualquer script que importe campos de usuário personalizados e adicione isso ao seu script

1 curtida

Eu também tentei o custom_fields.csv de discourse/script/import_scripts/csv_importer.rb at main · discourse/discourse · GitHub
Nome do campo DrupalID

id,user_field_1,DrupalID,Drupal ID,custom_field_DrupalID,drupalid
23456,John,John,Doe,example,johndoe
23457,Jane,Jane,Smith,example1,janesmith

Não está funcionando, mostrando campo em branco

Parece que discourse/script/import_scripts/csv_importer.rb at main · discourse/discourse · GitHub deve funcionar, mas você tem que definir o ENV visto em discourse/script/import_scripts/csv_importer.rb at main · discourse/discourse · GitHub.

1 curtida