Skip to content

Instantly share code, notes, and snippets.

@valk
valk / index.md
Last active December 17, 2015 15:59 — forked from rstacruz/index.md

Rails Models

Generating models

$ rails g model User

Associations

belongs_to

has_one

@valk
valk / gist:5764490
Created June 12, 2013 11:22
Restore Ubuntu / Linux terminal with preset working directories and tab title names.
#!/bin/sh
gnome-terminal \
--tab -t "guard" --working-directory=$HOME/projects/my_project \
--tab -t "server" --working-directory=$HOME/projects/my_project \
--tab -t "console" --working-directory=$HOME/projects/my_project \
--tab -t "cli" --working-directory=$HOME/projects/my_project \
--tab -t "root" --profile=root
@valk
valk / sandbox.rb
Created June 12, 2013 19:22
How to run Rails server and perform other commands from a Ruby script file.
#!/usr/bin/env ruby
# Put this file in /script/ directory.
require 'rails/commands/server'
Rails::Server.new.tap { |server|
APP_PATH = File.expand_path('../../config/application', __FILE__)
require APP_PATH
Dir.chdir(Rails.application.root)
server.start
@valk
valk / fast_populate_mysql_random_strings.sql
Created June 20, 2013 10:13
Create test table in MySQL and ultra-fast populate it with random strings. Usual INSERTS would take 100x times slower. This gist was prepared to benchmark LIKEs on inserted data. Further optimizations can be made based on this http://dev.mysql.com/doc/refman/5.0/en/insert-speed.html
CREATE TABLE test (
id INT NOT NULL AUTO_INCREMENT,
last_name VARCHAR(255) NOT NULL,
first_name VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
drop procedure prepare_data;
delete from test where id>0;
#!/usr/bin/env bash
# Tested for Ubuntu 12.04
[[ "$(id -u)" -ne "0" ]] && echo "must be root!" && exit 1
RBVER="1.9.3-p194"
apt-get update
apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev wget rsync
diff --git a/gc.c b/gc.c
--- a/gc.c
+++ b/gc.c
@@ -77,6 +77,41 @@ void *alloca ();
#ifndef GC_MALLOC_LIMIT
#define GC_MALLOC_LIMIT 8000000
#endif
+#define HEAP_MIN_SLOTS 10000
+#define FREE_MIN 4096
+
=Navigating=
visit('/projects')
visit(post_comments_path(post))
=Clicking links and buttons=
click_link('id-of-link')
click_link('Link Text')
click_button('Save')
click('Link Text') # Click either a link or a button
click('Button Value')
@valk
valk / wheregem.rb
Created November 22, 2014 20:52
Find the location of the specified gem. Usage: ruby wheregem.rb activerecord
gemname = ARGF.argv[0]
spec = Gem::Specification.find_by_name(gemname)
gem_root = spec.gem_dir
gem_lib = gem_root + "/lib"
puts gem_lib
@valk
valk / server.rb
Last active August 29, 2015 14:10
Tiny server that allows working with static files or anything else written in Ruby.
#!/usr/bin/env ruby
#
# In order to run:
# > ruby server.rb
#
# Or add execution permissions and run:
# > ./server.rb
#
# Then point your browser to http://localhost:1234/your_file.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Search</title>
<style>
body { margin: 0; box-sizing: border-box; }
.header { width: 100%; height: 36px; background: #DAE3ED; padding: 14px; color: #111; }
.search { margin: 0 40px; }
.search__input { height: 26px; width: 40%; border-radius: 4px; padding: 4px 8px;