Método indefinido `Método 'para" cadena ": cadena -- ruby-on-rails campo con ruby camp Relacionados El problema

undefined method `method' for “String”:String


-1
vote

problema

Español

Actualmente estoy recibiendo este error:

Método indefinido `Street_Address 'para" no establecer ": cadena

Mi objetivo es manejar un error que ocurre cuando la dirección de un usuario vuelve a Nil.

Aquí está el código con el que se produce el error:

  def address     if params[formatted_address["address"]].nil?       address = ''       street_address = ''       country = ''       region = ''       city = ''       zip = ''     else       address = ActiveSupport::JSON.decode(formatted_address["address"])       street_address = address["street_address"]       country = address["country"]       region = address["region"]       city = address["locality"]       zip = address["postal_code"]     end      end    info do     {       name: user_info.name,       email: user_info.email,       nickname: user_info.preferred_username,       first_name: user_info.given_name,       last_name: user_info.family_name,       gender: user_info.gender,       phone: user_info.phone_number,       birthdate: user_info.birthdate,       street_address: address.street_address, <-- error occurs here       country: address.country,       region: address.region,       city: address.city,       zip: address.zip,       urls: { website: user_info.website }     }   end   
Original en ingles

I'm currently getting this error:

undefined method `street_address' for "Not Set":String

My goal is to handle an error that occurs when a user's address comes back nil.

Here's the code with where the error occurs:

def address     if params[formatted_address["address"]].nil?       address = ''       street_address = ''       country = ''       region = ''       city = ''       zip = ''     else       address = ActiveSupport::JSON.decode(formatted_address["address"])       street_address = address["street_address"]       country = address["country"]       region = address["region"]       city = address["locality"]       zip = address["postal_code"]     end      end    info do     {       name: user_info.name,       email: user_info.email,       nickname: user_info.preferred_username,       first_name: user_info.given_name,       last_name: user_info.family_name,       gender: user_info.gender,       phone: user_info.phone_number,       birthdate: user_info.birthdate,       street_address: address.street_address, <-- error occurs here       country: address.country,       region: address.region,       city: address.city,       zip: address.zip,       urls: { website: user_info.website }     }   end 
     

Lista de respuestas

0
 
vote

En la declaración más, acabo de crear una réplica JSON con los valores que quería volver

  --query "[appId, password]" -o tsv2  
 

in the else statement i just created a replica JSON with the values that i wanted to come back

def address         if formatted_address["address"].nil?           address = JSON.parse('{             "street_address": "",             "country": "",             "region": "",             "locality": "",             "postal_code": ""             }')         else           address = ActiveSupport::JSON.decode(formatted_address["address"])         end       end    info do     {       name: user_info.name,       email: user_info.email,       nickname: user_info.preferred_username,       first_name: user_info.given_name,       last_name: user_info.family_name,       gender: user_info.gender,       phone: user_info.phone_number,       birthdate: user_info.birthdate,       street_address: address["street_address"],       country: address["country"],       region: address["region"],       city: address["locality"],       zip: address["postal_code"],       urls: { website: user_info.website }     }   end 
 
 
-1
 
vote

Si desea guardar los espacios en blanco en los campos de dirección en caso de parámetros de dirección en blanco, debe configurar los valores predeterminados en '' en la migración / tabla.

 

If you want to save the blank spaces in address fields in case of blank address parameters, then you should set defaults to ' ' in the migration/table.

 
 

Relacionados problema

33  Proyectos de rubí de código abierto [cerrado]  ( Open source ruby projects ) 
Según lo que actualmente representa, esta pregunta no es un buen ajuste para nuestro Q & Amp; un formato. Esperamos que las...

29  ¿Cuáles son sus estrategias para mantener el uso de memoria bajo?  ( What are your strategies to keep the memory usage low ) 
ruby ​​ es verdaderamente hambriento de memoria, pero también vale la pena todos los bits. ¿Qué haces para mantener el uso de la memoria bajo? ¿Evita las c...

46  ¿Cómo uso (n) maldiciones en Ruby?  ( How do i use ncurses in ruby ) 
Me gustaría crear una barra de progreso para indicar el estado de un trabajo por lotes en Ruby . He leído algunos tutoriales / < un href = "http://ncurse...

55  Implementación de "Recordarme" en una solicitud de rieles  ( Implementation of remember me in a rails application ) 
My Rails-App tiene una casilla de inicio de sesión con una casilla de verificación "Recordarme". Los usuarios que comprueban esa casilla deben permanecer cone...

338  ¿Cuándo usar Lambda, cuándo usar Proc.New?  ( When to use lambda when to use proc new ) 
En Ruby 1.8, hay diferencias sutiles entre Proc / Lambda por un lado, y Proc.new en el otro. ¿Cuáles son esas diferencias? ¿Puedes dar pautas sobre cóm...

17  ¿Cómo puedo modificar archivos .xfdl? (Actualización # 1)  ( How can i modify xfdl files update 1 ) 
El .XFDL Extensión de archivo Identifica XFDL Archivos de documentos formateados. Estos pertenecen a la norma basada en el documento y plantilla basados ​...

1  Ruby: Cómo romper una cadena potencialmente unicode en bytes  ( Ruby how to break a potentially unicode string into bytes ) 
Estoy escribiendo un juego que está tomando la entrada de usuario y lo hace en la pantalla. El motor que estoy usando para esto es totalmente amigable para lo...

22  SystemExit frecuente en Ruby al hacer llamadas HTTP  ( Frequent systemexit in ruby when making http calls ) 
Tengo un sitio web de Ruby On Rails que hace llamadas HTTP a un servicio web externo. Acerca de una vez al día Obtengo un correo electrónico de error System...

23  ¿Cómo puedo arreglar el error 'STORY DE VISTA DE VISUALIZACIÓN INSCRIBIDA' CON EL COMPLEMENTO DE EXCEXNOTIQUERO EN RAILS 2.1?  ( How do i fix unprocessed view path found error with exceptionnotifier plugin i ) 
Después de actualizar un sitio web de RAILS 1.2 a 2.1, el excepcionnotifier plugin ya no funciona, quejándose de este error : ActionView :: TemplateFinde...

47  ¿Cómo agrego comentarios existentes a RDOC en Ruby? [cerrado]  ( How do i add existing comments to rdoc in ruby ) 
cerrado. Esta pregunta no cumple con pautas de desbordamiento de pila . Actualmente no está aceptando respuestas. ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos