Preguntas etiquetadas con ruby

95
Cómo abrir archivos relacionados con el directorio de inicio

Lo siguiente falla Errno::ENOENT: No such file or directory, incluso si el archivo existe: open('~/some_file') Sin embargo, puedo hacer esto: open(File.expand_path('~/some_file')) Tengo dos preguntas: ¿Por qué no openprocesa la tilde como apuntando al directorio de inicio? ¿Hay alguna manera...

95
En Ruby, ¿existe un método Array que combine 'seleccionar' y 'mapa'?

Tengo una matriz de Ruby que contiene algunos valores de cadena. Necesito: Encuentra todos los elementos que coinciden con algún predicado Ejecute los elementos coincidentes a través de una transformación Devuelve los resultados como una matriz En este momento, mi solución se ve así: def...

95
¿Cómo extraigo un sub-hash de un hash?

Tengo un hash: h1 = {:a => :A, :b => :B, :c => :C, :d => :D} ¿Cuál es la mejor manera de extraer un sub-hash como este? h1.extract_subhash(:b, :d, :e, :f) # => {:b => :B, :d => :D} h1 #=> {:a => :A, :c =>

95
Heredar métodos de clase de módulos / mixins en Ruby

Se sabe que en Ruby, los métodos de clase se heredan: class P def self.mm; puts 'abc' end end class Q < P; end Q.mm # works Sin embargo, me sorprende que no funcione con mixins: module M def self.mm; puts 'mixin' end end class N; include M end M.mm # works N.mm # does not work! Sé que el...

95
¿Dónde colocar métodos privados en Ruby?

La mayoría de los blogs, tutoriales o libros tienen métodos privados al final de cualquier clase / módulo. ¿Es esta la mejor práctica? Me parece más conveniente tener métodos privados cuando sea necesario. Por ejemplo: public def my_method # do something minion_method end private def...

95
Instalación de RubyGems en Windows

Soy nuevo en ruby. Intenté instalar Ruby Gems en mi PC siguiendo los pasos que se dan en el sitio http://rubygems.org/pages/download . Descargué el paquete del sitio mencionado, cambié el directorio al directorio en el que reside la instalación e intenté ejecutar la instalación usando el comando...

94
Cómo comprobar si una URL es válida

¿Cómo puedo comprobar si una cadena es una URL válida? Por ejemplo: http://hello.it => yes http:||bra.ziz, => no Si esta es una URL válida, ¿cómo puedo verificar si es relativa a un archivo de imagen?