Skip to content

Instantly share code, notes, and snippets.

View bryansray's full-sized avatar

Bryan Ray bryansray

View GitHub Profile
%{ "published_at" => { "year" => "2016", "day" => "05", "month" => "01" } }
# Convert the above to:
# { 2016, 05, 01 }
# Any recommendations on a "clean" way to make this transformation?
def changeset(model, params \\ :empty) do
model
|> cast(params, @required_fields, @optional_fields)
|> parse_markdown
end
defp parse_markdown(changeset) do
changeset
|> put_change(:text_html, get_change(changeset, :text))
end
defmodule Polyvox.Api.EpisodeView do
use Polyvox.Web, :view
@attributes ~w(id name)a
def render("show.json", %{ episode: episode }) do
episode
|> Map.take(@attributes)
end
end
Podcast
|> Podcast.Queries.active
|> Repo.preload :episodes
|> Repo.all
# Response:
# ** (Protocol.UndefinedError) protocol Ecto.Queryable not implemented for :episodes, the given module does not exist
defmodule Polyvox.Api.PodcastController do
use Polyvox.Web, :controller
alias Polyvox.Repo
alias Polyvox.Podcast
def index(conn, _params) do
podcasts = Repo.all(Podcast)
render conn, "index.json", data: podcasts
@bryansray
bryansray / check-item-level.weakaura
Created November 27, 2014 01:40
Check Item Level!
d0dRdaGEev1UeLSnO0(quyMkYTfz2kzCkQBIOIJtQY3evNNcTtvr7vA3k1(P6NiQ0Wiv(nexdroeIsgSkdNOoiHOtPkCmI05eLAHik1Zuvwmf1YH0dvapvyzuKNJW1P0ujyYi10rnkfQhdvxg8ocvBKq5WKYMvvTDK8rsvnlcHpRk9DevzEikAAqXOffJNqQtsb3sbDAsUhHKvseVwb6VkKR0k0i1GUbDfA8JS5qr(qF(jTboYcbTc9P0kgwmMMXInpx3338xo28(pKeM(0ufBE(thP5Cs6WGfZSUpP9FijmLBqRiKxAgfarZngidGpOF6dAOKvd7MrvVVaAfAGBjyKuJF7gNvi7XpCj(5NF(TqW1w(PyinbuWse(b6zvYYaTbgstafS8tu(PpWIKcq1EbdmKMakyn(H4Ue)8Zp)Cj(5NF(HcSfD7hONvjld0gyinbuWYpYWVXkgstafS8BOFs19qCxcSPl3qBRsASczxHgjn1UcnyJYqdzuGa4gYOabWnmJy34q5Ynyu17lGwHgSrzObULGrsnakyZngajzwJ9Bc5TbULGrsn(TBCwHSh)WL4NF(53cbxB5NIH0eqblr4hONvjld0gyinbuWYpr5N(alskav7fmWqAcOG14hI7s8Zp)8ZL4NF(5hkWw0TFGEwLSmqBGH0eqbl)it)gRyinbuWYVH(jv3dXDjWMUbULGrsJyJYqdcwJTenWZa4d2WktRXqd7gOGn3GvjGUHLagz3kUKDdClbJKgLrrdnyvcOl3afEviBbJYqdgen3G8u0CMkwEojt5ZKMZ)((M)Wo3)Hyi14hzZnihJeSc3pYf1mrJTnjGQEFbuI(uAdfDJbYa4d6Nbgs(nbuWQrgq9MHRyZ5MiLBkBSyWM)Lngsy7)qmZnwiA0vOHLagTbkaTMBWAlyZvOrYUyvfkxUbQgouHgj7IvvOC5gwcyeosYSgxZnSeWiA1)Vc3UyJ1CduKfuHgj7IvvOC5YLBq0Wuw6Yk7SYBq1NsXysx5wa
fizzbuzz = fn
0, 0, _ -> "FizzBuzz"
0, _, _ -> "Fizz"
_, 0, _ -> "Buzz"
_, _, c -> c
end
display_fizzbuzz = fn n -> fizzbuzz.(rem(n, 3), rem(n, 5), n) end
IO.inspect for n <- 1..100, do: display_fizzbuzz.(n)
import 'dart:io';
void main() {
HttpServer.bind('127.0.0.1', 8080).then((server) {
server.listen((HttpRequest request) {
request.response.write('Hello, World!');
request.response.close();
});
});
}
@bryansray
bryansray / RhinoMockTests.cs
Created March 17, 2012 01:44
RhinoMocks Repeat Expectations
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NUnit.Framework;
using Rhino.Mocks;
using System.Diagnostics;
namespace RhinoMocks
{
@bryansray
bryansray / rspec_filtering.rb
Created December 17, 2010 14:43
Filtering your specs with RSpec
require 'rspec'
RSpec.configure do |config|
config.filter = { :focus => true }
# config.exclusion_filter = { :slow => true }
end
describe "Tests" do
it "should run because it is focused", :focus => true do