Estoy trabajando en mi primera gema (bastante nueva para ruby también), el código completo hasta el momento está aquí;Usando archivos yaml dentro de gemas
https://github.com/mikeyhogarth/tablecloth
Una cosa que he tratado de hacer es crear un archivo YAML, que la gema puede acceder como una búsqueda (en lib/mantel/yaml/qty.yaml). Todo esto funciona muy bien y la unidad prueba todos los pasos, sin embargo, cuando construyo e instalo la gema y trato de ejecutar bajo IRB (desde mi carpeta de inicio) lo estoy obteniendo;
Errno::ENOENT: No such file or directory - lib/tablecloth/yaml/qty.yaml
El código ahora está buscando el archivo en ~/lib/mantel ... en lugar de en el directorio de la gema está instalada a. Entonces mis preguntas son;
1) ¿Cómo debo cambiar la línea 27 de recipe.rb de manera que esté buscando en la carpeta en la que está instalada la gema?
2) ¿De hecho, me estoy acercando a todo esto incorrectamente (es incluso apropiado usar archivos estáticos yaml dentro de las gemas de esta manera)?
Gracias. A decir verdad, la única razón por la que lo hice de esta manera es porque el libro que acabo de leer sugirió que era la mejor práctica (sin números mágicos en el código, editable por no programadores, etc.), pero sí tomo su punto y lo haré probablemente cambie esto en algún momento. –