dr3adx
(Dr3adx)
18 Mayo, 2020 04:08
1
Estoy intentando importar datos de mi foro de IPB y al ejecutar el script ipboard3 obtengo el siguiente error:
script/import_scripts/ipboard3.rb:375:in `clean_up': undefined method `encode!' for nil:NilClass (NoMethodError)
root@forum:/var/www/discourse# `clean_up': undefined method `encode!'
¿Por qué está dando ‘undefined method encode!’ ?
pfaffman
(Jay Pfaffman)
18 Mayo, 2020 17:23
2
Porque se está llamando con raw siendo nil.
Así que tendrás que averiguar qué función lo está llamando y por qué no está recibiendo los datos para el campo raw de la publicación.
Mi suposición es que es esta línea:
bio_raw: clean_up(u["pp_about_me"]),
Si ese es el caso, entonces quizás lo que debas hacer es modificar clean_up para que devuelva nil si no recibe datos.
2 Me gusta
dr3adx
(Dr3adx)
19 Mayo, 2020 00:54
4
pfaffman:
Porque se está llamando con raw siendo nil.
Así que tendrás que averiguar qué función lo está llamando y por qué no está recibiendo datos para los datos crudos del post.
Mi suposición es esta línea:
bio_raw: clean_up(u["pp_about_me"]),
Si ese es el caso, entonces quizás lo que haya que hacer es modificar clean_up para que devuelva nil si no recibe datos.
¿Esto está bien?
if raw.to_i.zero?
return
end
Lo probé e importó todos los usuarios, temas y posts, pero los posts no tienen cuerpo (están vacíos). ¿Tienes alguna idea de por qué? No creo que añadir “return nil” marque mucha diferencia, ¿qué opinas?
Además, todos los mensajes personales se importaron, pero también están vacíos.
pfaffman
(Jay Pfaffman)
19 Mayo, 2020 02:07
5
La consulta a la base de datos es incorrecta por alguna razón. No está obteniendo los datos del contenido de la publicación.
riking
(Kane York)
19 Mayo, 2020 06:55
6
No, eso se activará demasiado a menudo. Prueba esto:
return if raw.nil?
2 Me gusta
dr3adx
(Dr3adx)
19 Mayo, 2020 17:01
7
Eso es extraño, porque estoy usando IPB3 y verifiqué los nombres de las columnas y coinciden
pfaffman
(Jay Pfaffman)
19 Mayo, 2020 17:36
8
Si realizas las consultas que ejecuta el script, ¿proporcionan los datos que esperas?
¿Cambias tu
if raw.to_i.zero?
por algo como
if raw.length == 0
"randome text".to_i.zero? siempre será verdadero.
2 Me gusta
system
(system)
Cerrado
18 Junio, 2020 17:51
9
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.