Skip to content

Instantly share code, notes, and snippets.

View JonKernPA's full-sized avatar

Jon Kern JonKernPA

View GitHub Profile
@JonKernPA
JonKernPA / date_query_in_mongomapper.rb
Created November 9, 2010 21:06
This shows an odd quirk of the date query
require 'rubygems'
require 'mongo_mapper'
MongoMapper.connection = Mongo::Connection.new('127.0.0.1', 27017, :logger => Logger.new(STDOUT))
# MongoMapper.connection = Mongo::Connection.new('127.0.0.1', 27017)
MongoMapper.database = 'testing'
class Person
include MongoMapper::Document
class Blog
include MongoMapper::Document
# Attributes ::::::::::::::::::::::::::::::::::::::::::::::::::::::
key :title, String
key :category_id, ObjectId
key :archive_after, Time
# Assocations :::::::::::::::::::::::::::::::::::::::::::::::::::::
belongs_to :category
@JonKernPA
JonKernPA / message_log.rb
Created August 5, 2010 03:43
Demonstrating various searches in mongomapper
class MessageLog
include MongoMapper::Document
# Attributes ::::::::::::::::::::::::::::::::::::::::::::::::::::::
key :repeat_count, Integer, :default => 0
key :patient_name, String, :default => 'Unknown', :index => true
key :patient_num, String, :default => 'Unknown', :index => true
key :patient_emr, String, :default => 'Unknown', :index => true
# Doctor info (number, name, group)
key :doctor, String, :default => 'Unknown', :index => true
@JonKernPA
JonKernPA / idea.rb
Created August 4, 2010 18:00
This shows A User/Idea/Rating model using MongoMapper
class Idea
include MongoMapper::Document
key :brilliance, String, :default => "Dark Matter Sucks!"
many :ratings
belongs_to :user
key :user_id, ObjectId
def to_s
text = "#{user.name} had this IDEA: #{brilliance}\n\tRATINGS:\n"
ratings.each do |r|
@JonKernPA
JonKernPA / nested.rb
Created August 2, 2010 13:47
Nested comments on a Blog using MongoMapper
# Be sure to have mongod running
# Below is an attempt to show one way to have nested comments on a blog post
# I did not thoroughly examine whether it is bulletproof or performant.
# But it seems to work :-)
col = Blog.all()
col.each {|c| c.destroy }
col = Comment.all()
col.each {|c| c.destroy }
@JonKernPA
JonKernPA / list_movies_spec.rb
Created August 5, 2014 01:21
spec helper and test for flix project
require 'spec_helper'
describe "Viewing the list of movies" do
it "shows the movies" do
movie1 = Movie.create(title: "Iron Man",
rating: "PG-13",
total_gross: 318412101.00,
description: "Tony Stark builds an armored suit to fight the throes of evil",
released_on: "2008-05-02",
@JonKernPA
JonKernPA / state_spec.rb
Created April 14, 2014 18:53
I spent 15 minutes creating a quick example...
require 'spec_helper'
# I spent 15 minutes creating a quick example for an email list...
describe "State" do
it 'has a list of states' do
State.respond_to?(:states)
expect(State.states).to have_key('AK')
end
@JonKernPA
JonKernPA / dragonfly.rb
Created March 13, 2014 02:31
Dragonfly and MongoMapper and Heroku
require 'dragonfly'
require 'dragonfly/mongo_data_store'
require 'mongo'
require 'uri'
# From https://devcenter.heroku.com/articles/mongohq#use-with-ruby
def get_connection
return @db_connection if @db_connection
db = URI.parse(ENV['MONGOHQ_URL'])