Articles of ruby

Use YAML con variables

¿Son posibles las variables dentro de los archivos YAML? Por ejemplo: theme: name: default css_path: compiled/themes/$theme.name layout_path: themes/$theme.name En este ejemplo, ¿cómo se puede usar theme: name: default en otras configuraciones? ¿Cuál es la syntax?

¿Cuál es la diferencia entre map, each, y collect?

En Ruby, ¿hay alguna diferencia entre las funcionalidades de each , map y collect ?

¿Cómo creo una instancia de clase a partir de un nombre de cadena en ruby?

Tengo el nombre de una clase y quiero crear una instancia de esa clase para poder recorrer cada atributo de Rails que está presente en el esquema de esa clase. ¿Cómo voy a hacer eso? Tengo el nombre como una cadena de la clase que quiero verificar Creo que necesito instanciar una instancia de clase […]

Determinar el tipo de archivo en Ruby

¿Cómo se puede determinar de manera confiable el tipo de archivo? El análisis de extensión de archivo no es aceptable. Debe haber una herramienta rubyesque similar al comando UNIX file (1)? Se trata de MIME o del tipo de contenido, no de las clasificaciones del sistema de archivos, como el directorio, el archivo o el […]

Ruby max entero

Necesito poder determinar un entero máximo de sistemas en Ruby. Alguien sabe cómo, o si es posible?

Súper palabra clave en Ruby

¿Para qué sirve el super en este código? def initialize options = {}, &block @filter = options.delete(:filter) || 1 super end Por lo que sé, es como llamar a la función recursivamente, ¿verdad?

¿Por qué todos los ayudantes de Rails están disponibles para todas las vistas, todo el tiempo? ¿Hay alguna forma de desactivar esto?

¿Por qué puedo acceder a los métodos de ayuda para un controlador en las vistas de un controlador diferente? ¿Hay alguna manera de desactivar esto sin hackear / reparar Rails?

¿Qué significa el operador de signo de interrogación en Ruby?

¿Cuál es el propósito del operador de signo de interrogación en Ruby? A veces aparece así: assert !product.valid? a veces está en una construcción if .

Asignación constante dinámica

class MyClass def mymethod MYCONSTANT = “blah” end end me da el error: SyntaxError: error de asignación de constante dinámica ¿Por qué esto se considera una constante dinámica? Solo le estoy asignando una cadena.

DRY Ruby Initialization with Hash Argument

Me encuentro usando bastante los argumentos hash para los constructores, especialmente cuando escribo DSL para configuración u otros bits de API a los que el usuario final estará expuesto. Lo que termino haciendo es algo como lo siguiente: class Example PROPERTIES = [:name, :age] PROPERTIES.each { |p| attr_reader p } def initialize(args) PROPERTIES.each do |p| […]