Por ejemplo, estoy abriendo una ventana de línea de comando interactiva.
docker exec -it container rails cCuando pego un comando de varias líneas, evalúa cada línea en lugar de pegar un bloque. ¿Cómo puedo configurarlo para que no evalúe?
Order.last .user .idAh, truco simple aquí: escriba begin + ingresar, pegue el código, escriba end :
begin Order.last .user .id endNo puede ni debe ser configurable. La razón es que la consola no puede saber cuándo ha terminado de escribir el comando completo, ya que la primera línea es una declaración Ruby completamente válida. Las cosas son ligeramente diferentes si adapta un estilo de codificación diferente:
Order.last. user. id El código anterior funcionará una vez copiado en la consola (¡pero caramba, realmente odio ese estilo!) porque está claro para el intérprete que la declaración aún no se ha completado, de manera similar a la falta de corchetes o comillas de cierre. Envolver el código en begin / end tiene el mismo efecto: le dice al intérprete que el código aún no está completo, por lo que espera el final end .