Skip to content

Instantly share code, notes, and snippets.

@xaviervia
Created September 21, 2012 07:59
Show Gist options
  • Save xaviervia/3760269 to your computer and use it in GitHub Desktop.
Save xaviervia/3760269 to your computer and use it in GitHub Desktop.

Creá una carpeta nueva "brisas" y hacé "cd" a esa carpeta

El archivo .yaml ponelo en la carpeta "test/fixtures/ejemplo" dentro de brisas

El archivo .thor ponelo en la carpeta "tasks" dentro de brisas

El archivo "Gemfile" tiralo directamente dentro de brisas, lo mismo que el app.rb

El archivo "anunciantes.slim" ponelo dentro de la carpeta "views" dentro de brisas

Corré el comando bundle

Corré el comando thor fixture:push ejemplo

y el comando bundle exec ruby app.rb

Entrá con el navegador a localhost:4567/anunciantes y ya podés ver algo.

el nombre bizarro es porque ordena alfabéticamente

doctype html
html
head
body
- @anunciantes.each do |anunciante|
article
h2 = anunciante[:name]
p = anunciante[:rubro]
# Datos
coca_cola:
nombre: Coca Cola
rubro: [bebidas, gaseosas]
pepsi:
nombre: Pepsi
rubro: [bebidas, gaseosas]
require 'sinatra'
require 'mongo'
require 'slim'
helpers do
def db
@db ||= Mongo::Connection.new.db 'brisas'
end
end
get '/anunciantes' do
@anunciantes = db[:anunciantes].find
slim :anunciantes
end
class Fixture < Thor
desc "push <fixture>", "inserta el fixture en la db"
def push cual
db = Mongo::Connection.new.db 'brisas'
fix = Mongo::Fixture.new cual.to_sym, db
end
end
source :rubygems
gem 'mongo-fixture'
gem 'mongo'
gem 'bson_ext'
gem 'sinatra'
gem 'slim'
gem 'thor'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment