Starting to split Ruby and Rails snippets
This commit is contained in:
parent
66189ef371
commit
cbcc23571f
532
snippets/rails.snippets
Normal file
532
snippets/rails.snippets
Normal file
@ -0,0 +1,532 @@
|
||||
snippet art
|
||||
assert_redirected_to ${1::action => "${2:index}"}
|
||||
snippet artnp
|
||||
assert_redirected_to ${1:parent}_${2:child}_path(${3:@$1}, ${0:@$2})
|
||||
snippet artnpp
|
||||
assert_redirected_to ${1:parent}_${2:child}_path(${0:@$1})
|
||||
snippet artp
|
||||
assert_redirected_to ${1:model}_path(${0:@$1})
|
||||
snippet artpp
|
||||
assert_redirected_to ${0:model}s_path
|
||||
snippet asd
|
||||
assert_difference "${1:Model}.${2:count}", ${3:1} do
|
||||
${0}
|
||||
end
|
||||
snippet asnd
|
||||
assert_no_difference "${1:Model}.${2:count}" do
|
||||
${0}
|
||||
end
|
||||
snippet asre
|
||||
assert_response :${1:success}, @response.body
|
||||
snippet asrj
|
||||
assert_rjs :${1:replace}, "${0:dom id}"
|
||||
snippet ass assert_select(..)
|
||||
assert_select '${1:path}', :${2:text} => '${3:inner_html' ${4:do}
|
||||
snippet ba
|
||||
before_action :${0:method}
|
||||
snippet bf
|
||||
before_filter :${0:method}
|
||||
snippet bt
|
||||
belongs_to :${0:association}
|
||||
snippet btp
|
||||
belongs_to :${1:association}, :polymorphic => true
|
||||
snippet crw
|
||||
cattr_accessor :${0:attr_names}
|
||||
snippet defcreate
|
||||
def create
|
||||
@${1:model_class_name} = ${2:ModelClassName}.new(params[:$1])
|
||||
|
||||
respond_to do |format|
|
||||
if @$1.save
|
||||
flash[:notice] = '$2 was successfully created.'
|
||||
format.html { redirect_to(@$1) }
|
||||
format.xml { render :xml => @$1, :status => :created, :location => @$1 }
|
||||
else
|
||||
format.html { render :action => "new" }
|
||||
format.xml { render :xml => @$1.errors, :status => :unprocessable_entity }
|
||||
end
|
||||
end
|
||||
end
|
||||
snippet defdestroy
|
||||
def destroy
|
||||
@${1:model_class_name} = ${2:ModelClassName}.find(params[:id])
|
||||
@$1.destroy
|
||||
|
||||
respond_to do |format|
|
||||
format.html { redirect_to($1s_url) }
|
||||
format.xml { head :ok }
|
||||
end
|
||||
end
|
||||
snippet defedit
|
||||
def edit
|
||||
@${1:model_class_name} = ${0:ModelClassName}.find(params[:id])
|
||||
end
|
||||
snippet defindex
|
||||
def index
|
||||
@${1:model_class_name} = ${2:ModelClassName}.all
|
||||
|
||||
respond_to do |format|
|
||||
format.html # index.html.erb
|
||||
format.xml { render :xml => @$1s }
|
||||
end
|
||||
end
|
||||
snippet defnew
|
||||
def new
|
||||
@${1:model_class_name} = ${2:ModelClassName}.new
|
||||
|
||||
respond_to do |format|
|
||||
format.html # new.html.erb
|
||||
format.xml { render :xml => @$1 }
|
||||
end
|
||||
end
|
||||
snippet defshow
|
||||
def show
|
||||
@${1:model_class_name} = ${2:ModelClassName}.find(params[:id])
|
||||
|
||||
respond_to do |format|
|
||||
format.html # show.html.erb
|
||||
format.xml { render :xml => @$1 }
|
||||
end
|
||||
end
|
||||
snippet defupdate
|
||||
def update
|
||||
@${1:model_class_name} = ${2:ModelClassName}.find(params[:id])
|
||||
|
||||
respond_to do |format|
|
||||
if @$1.update_attributes(params[:$1])
|
||||
flash[:notice] = '$2 was successfully updated.'
|
||||
format.html { redirect_to(@$1) }
|
||||
format.xml { head :ok }
|
||||
else
|
||||
format.html { render :action => "edit" }
|
||||
format.xml { render :xml => @$1.errors, :status => :unprocessable_entity }
|
||||
end
|
||||
end
|
||||
end
|
||||
snippet dele delegate .. to
|
||||
delegate :${1:methods}, :to => :${0:object}
|
||||
snippet dele delegate .. to .. prefix .. allow_nil
|
||||
delegate :${1:methods}, :to => :${2:object}, :prefix => :${3:prefix}, :allow_nil => ${0:allow_nil}
|
||||
snippet flash
|
||||
flash[:${1:notice}] = "${0}"
|
||||
snippet habtm
|
||||
has_and_belongs_to_many :${1:object}, :join_table => "${2:table_name}", :foreign_key => "${3}_id"
|
||||
snippet hm
|
||||
has_many :${0:object}
|
||||
snippet hmd
|
||||
has_many :${1:other}s, :class_name => "${2:$1}", :foreign_key => "${3:$1}_id", :dependent => :destroy
|
||||
snippet hmt
|
||||
has_many :${1:object}, :through => :${0:object}
|
||||
snippet ho
|
||||
has_one :${0:object}
|
||||
snippet hod
|
||||
has_one :${1:object}, dependent: :${0:destroy}
|
||||
snippet i18
|
||||
I18n.t('${1:type.key}')
|
||||
snippet ist
|
||||
<%= image_submit_tag("${1:agree.png}", :id => "${2:id}"${0} %>
|
||||
snippet log
|
||||
Rails.logger.${1:debug} ${0}
|
||||
snippet log2
|
||||
RAILS_DEFAULT_LOGGER.${1:debug} ${0}
|
||||
snippet logd
|
||||
logger.debug { "${1:message}" }
|
||||
snippet loge
|
||||
logger.error { "${1:message}" }
|
||||
snippet logf
|
||||
logger.fatal { "${1:message}" }
|
||||
snippet logi
|
||||
logger.info { "${1:message}" }
|
||||
snippet logw
|
||||
logger.warn { "${1:message}" }
|
||||
snippet mapc
|
||||
${1:map}.${2:connect} '${0:controller/:action/:id}'
|
||||
snippet mapca
|
||||
${1:map}.catch_all "*${2:anything}", :controller => "${3:default}", :action => "${4:error}"
|
||||
snippet mapr
|
||||
${1:map}.resource :${0:resource}
|
||||
snippet maprs
|
||||
${1:map}.resources :${0:resource}
|
||||
snippet mapwo
|
||||
${1:map}.with_options :${2:controller} => '${3:thing}' do |$3|
|
||||
${0}
|
||||
end
|
||||
|
||||
###############################
|
||||
# model callback snippets #
|
||||
###############################
|
||||
|
||||
# before callback
|
||||
snippet mbv
|
||||
before_validation :${0:method}
|
||||
snippet mbc
|
||||
before_create :${0:method}
|
||||
snippet mbu
|
||||
before_update :${0:method}
|
||||
snippet mbs
|
||||
before_save :${0:method}
|
||||
snippet mbd
|
||||
before_destroy :${0:method}
|
||||
|
||||
# after callback
|
||||
snippet mav
|
||||
after_validation :${0:method}
|
||||
snippet maf
|
||||
after_find :${0:method}
|
||||
snippet mat
|
||||
after_touch :${0:method}
|
||||
snippet macr
|
||||
after_create :${0:method}
|
||||
snippet mau
|
||||
after_update :${0:method}
|
||||
snippet mas
|
||||
after_save :${0:method}
|
||||
snippet mad
|
||||
after_destroy :${0:method}
|
||||
|
||||
# around callback
|
||||
snippet marc
|
||||
around_create :${0:method}
|
||||
snippet maru
|
||||
around_update :${0:method}
|
||||
snippet mars
|
||||
around_save :${0:method}
|
||||
snippet mard
|
||||
around_destroy :${0:method}
|
||||
|
||||
snippet mcht
|
||||
change_table :${1:table_name} do |t|
|
||||
${0}
|
||||
end
|
||||
snippet mp
|
||||
map(&:${0:id})
|
||||
snippet mrw
|
||||
mattr_accessor :${0:attr_names}
|
||||
snippet oa
|
||||
order("${0:field}")
|
||||
snippet od
|
||||
order("${0:field} DESC")
|
||||
snippet pa
|
||||
params[:${1:id}]
|
||||
snippet ra
|
||||
render :action => "${0:action}"
|
||||
snippet ral
|
||||
render :action => "${1:action}", :layout => "${0:layoutname}"
|
||||
snippet rest
|
||||
respond_to do |format|
|
||||
format.${1:html} { ${0} }
|
||||
end
|
||||
snippet rf
|
||||
render :file => "${0:filepath}"
|
||||
snippet rfu
|
||||
render :file => "${1:filepath}", :use_full_path => ${0:false}
|
||||
snippet ri
|
||||
render :inline => "${0:<%= 'hello' %>}"
|
||||
snippet ril
|
||||
render :inline => "${1:<%= 'hello' %>}", :locals => { ${2::name} => "${3:value}"${0} }
|
||||
snippet rit
|
||||
render :inline => "${1:<%= 'hello' %>}", :type => ${0::rxml}
|
||||
snippet rjson
|
||||
render :json => ${0:text to render}
|
||||
snippet rl
|
||||
render :layout => "${0:layoutname}"
|
||||
snippet rn
|
||||
render :nothing => ${0:true}
|
||||
snippet rns
|
||||
render :nothing => ${1:true}, :status => ${0:401}
|
||||
snippet rp
|
||||
render :partial => "${0:item}"
|
||||
snippet rpc
|
||||
render :partial => "${1:item}", :collection => ${0:@$1s}
|
||||
snippet rpl
|
||||
render :partial => "${1:item}", :locals => { :${2:$1} => ${0:@$1}
|
||||
snippet rpo
|
||||
render :partial => "${1:item}", :object => ${0:@$1}
|
||||
snippet rps
|
||||
render :partial => "${1:item}", :status => ${0:500}
|
||||
snippet rt
|
||||
render :text => "${0:text to render}"
|
||||
snippet rtl
|
||||
render :text => "${1:text to render}", :layout => "${0:layoutname}"
|
||||
snippet rtlt
|
||||
render :text => "${1:text to render}", :layout => ${0:true}
|
||||
snippet rts
|
||||
render :text => "${1:text to render}", :status => ${0:401}
|
||||
snippet ru
|
||||
render :update do |${1:page}|
|
||||
$1.${0}
|
||||
end
|
||||
snippet rxml
|
||||
render :xml => ${0:text to render}
|
||||
snippet sc
|
||||
scope :${1:name}, -> { where(${2:field}: ${0:value}) }
|
||||
snippet sl
|
||||
scope :${1:name}, lambda do |${2:value}|
|
||||
where("${3:field = ?}", ${0:bind var})
|
||||
end
|
||||
snippet sha1
|
||||
Digest::SHA1.hexdigest(${0:string})
|
||||
snippet sweeper
|
||||
class ${1:ModelClassName}Sweeper < ActionController::Caching::Sweeper
|
||||
observe $1
|
||||
|
||||
def after_save(${0:model_class_name})
|
||||
expire_cache($2)
|
||||
end
|
||||
|
||||
def after_destroy($2)
|
||||
expire_cache($2)
|
||||
end
|
||||
|
||||
def expire_cache($2)
|
||||
expire_page
|
||||
end
|
||||
end
|
||||
snippet va validates_associated
|
||||
validates_associated :${0:attribute}
|
||||
snippet va validates .., :acceptance => true
|
||||
validates :${0:terms}, :acceptance => true
|
||||
snippet vc
|
||||
validates :${0:attribute}, :confirmation => true
|
||||
snippet ve
|
||||
validates :${1:attribute}, :exclusion => { :in => ${0:%w( mov avi )} }
|
||||
snippet vf
|
||||
validates :${1:attribute}, :format => { :with => /${0:regex}/ }
|
||||
snippet vi
|
||||
validates :${1:attribute}, :inclusion => { :in => %w(${0: mov avi }) }
|
||||
snippet vl
|
||||
validates :${1:attribute}, :length => { :in => ${2:3}..${0:20} }
|
||||
snippet vn
|
||||
validates :${0:attribute}, :numericality => true
|
||||
snippet vp
|
||||
validates :${0:attribute}, :presence => true
|
||||
snippet vu
|
||||
validates :${0:attribute}, :uniqueness => true
|
||||
snippet format
|
||||
format.${1:js|xml|html} { ${0} }
|
||||
snippet wc
|
||||
where(${1:"conditions"}${0:, bind_var})
|
||||
snippet wf
|
||||
where(${1:field} => ${0:value})
|
||||
snippet xdelete
|
||||
xhr :delete, :${1:destroy}, :id => ${2:1}
|
||||
snippet xget
|
||||
xhr :get, :${1:show}, :id => ${2:1}
|
||||
snippet xpost
|
||||
xhr :post, :${1:create}, :${2:object} => { ${0} }
|
||||
snippet xput
|
||||
xhr :put, :${1:update}, :id => ${2:1}, :${3:object} => { ${4} }
|
||||
snippet test
|
||||
test "should ${1:do something}" do
|
||||
${0}
|
||||
end
|
||||
###########################
|
||||
# migrations snippets #
|
||||
###########################
|
||||
snippet mac
|
||||
add_column :${1:table_name}, :${2:column_name}, :${0:data_type}
|
||||
snippet mai
|
||||
add_index :${1:table_name}, :${0:column_name}
|
||||
snippet mrc
|
||||
remove_column :${1:table_name}, :${0:column_name}
|
||||
snippet mrnc
|
||||
rename_column :${1:table_name}, :${2:old_column_name}, :${0:new_column_name}
|
||||
snippet mcc
|
||||
change_column :${1:table}, :${2:column}, :${0:type}
|
||||
snippet mnc
|
||||
t.${1:string} :${2:title}${3:, null: false}
|
||||
snippet mct
|
||||
create_table :${1:table_name} do |t|
|
||||
${0}
|
||||
end
|
||||
snippet migration class .. < ActiveRecord::Migration .. def up .. def down .. end
|
||||
class ${1:class_name} < ActiveRecord::Migration
|
||||
def up
|
||||
${0}
|
||||
end
|
||||
|
||||
def down
|
||||
end
|
||||
end
|
||||
snippet migration class .. < ActiveRecord::Migration .. def change .. end
|
||||
class ${1:class_name} < ActiveRecord::Migration
|
||||
def change
|
||||
${0}
|
||||
end
|
||||
end
|
||||
snippet trc
|
||||
t.remove :${0:column}
|
||||
snippet tre
|
||||
t.rename :${1:old_column_name}, :${2:new_column_name}
|
||||
${0}
|
||||
snippet tref
|
||||
t.references :${0:model}
|
||||
snippet tcb
|
||||
t.boolean :${1:title}
|
||||
${0}
|
||||
snippet tcbi
|
||||
t.binary :${1:title}, :limit => ${2:2}.megabytes
|
||||
${0}
|
||||
snippet tcd
|
||||
t.decimal :${1:title}, :precision => ${2:10}, :scale => ${3:2}
|
||||
${0}
|
||||
snippet tcda
|
||||
t.date :${1:title}
|
||||
${0}
|
||||
snippet tcdt
|
||||
t.datetime :${1:title}
|
||||
${0}
|
||||
snippet tcf
|
||||
t.float :${1:title}
|
||||
${0}
|
||||
snippet tch
|
||||
t.change :${1:name}, :${2:string}, :${3:limit} => ${4:80}
|
||||
${0}
|
||||
snippet tci
|
||||
t.integer :${1:title}
|
||||
${0}
|
||||
snippet tcl
|
||||
t.integer :lock_version, :null => false, :default => 0
|
||||
${0}
|
||||
snippet tcr
|
||||
t.references :${1:taggable}, :polymorphic => { :default => '${2:Photo}' }
|
||||
${0}
|
||||
snippet tcs
|
||||
t.string :${1:title}
|
||||
${0}
|
||||
snippet tct
|
||||
t.text :${1:title}
|
||||
${0}
|
||||
snippet tcti
|
||||
t.time :${1:title}
|
||||
${0}
|
||||
snippet tcts
|
||||
t.timestamp :${1:title}
|
||||
${0}
|
||||
snippet tctss
|
||||
t.timestamps
|
||||
${0}
|
||||
##########################
|
||||
# Rspec snippets #
|
||||
##########################
|
||||
snippet desc
|
||||
describe ${1:`substitute(substitute(vim_snippets#Filename(), '_spec$', '', ''), '\(_\|^\)\(.\)', '\u\2', 'g')`} do
|
||||
${0}
|
||||
end
|
||||
snippet descm
|
||||
describe "${1:#method}" do
|
||||
${0:pending "Not implemented"}
|
||||
end
|
||||
snippet cont
|
||||
context "${1:message}" do
|
||||
${0}
|
||||
end
|
||||
snippet bef
|
||||
before :${1:each} do
|
||||
${0}
|
||||
end
|
||||
snippet aft
|
||||
after :${1:each} do
|
||||
${0}
|
||||
end
|
||||
snippet let
|
||||
let(:${1:object}) { ${0} }
|
||||
snippet let!
|
||||
let!(:${1:object}) { ${0} }
|
||||
snippet subj
|
||||
subject { ${0} }
|
||||
snippet s.
|
||||
subject.${0:method}
|
||||
snippet spec
|
||||
specify { subject.${0} }
|
||||
snippet exp
|
||||
expect(${1:object}).to ${0}
|
||||
snippet expb
|
||||
expect { ${1:object} }.to ${0}
|
||||
snippet experr
|
||||
expect { ${1:object} }.to raise_error ${2:StandardError}, /${0:message_regex}/
|
||||
snippet shared
|
||||
shared_examples ${0:"shared examples name"}
|
||||
snippet ibl
|
||||
it_behaves_like ${0:"shared examples name"}
|
||||
snippet it
|
||||
it "${1:spec_name}" do
|
||||
${0}
|
||||
end
|
||||
snippet its
|
||||
its(:${1:method}) { should ${0} }
|
||||
snippet is
|
||||
it { should ${0} }
|
||||
snippet isn
|
||||
it { should_not ${0} }
|
||||
#ShouldaMatchers#ActionController
|
||||
snippet isfp
|
||||
it { should filter_param :${0:key} }
|
||||
snippet isrt
|
||||
it { should redirect_to ${0:url} }
|
||||
snippet isrtp
|
||||
it { should render_template ${0} }
|
||||
snippet isrwl
|
||||
it { should render_with_layout ${0} }
|
||||
snippet isrf
|
||||
it { should rescue_from ${0:exception} }
|
||||
snippet isrw
|
||||
it { should respond_with ${0:status} }
|
||||
snippet isr
|
||||
it { should route(:${1:method}, '${0:path}') }
|
||||
snippet isss
|
||||
it { should set_session :${0:key} }
|
||||
snippet issf
|
||||
it { should set_the_flash('${0}') }
|
||||
#ShouldaMatchers#ActiveModel
|
||||
snippet isama
|
||||
it { should allow_mass_assignment_of :${0} }
|
||||
snippet isav
|
||||
it { should allow_value(${1}).for :${0} }
|
||||
snippet isee
|
||||
it { should ensure_exclusion_of :${0} }
|
||||
snippet isei
|
||||
it { should ensure_inclusion_of :${0} }
|
||||
snippet isel
|
||||
it { should ensure_length_of :${0} }
|
||||
snippet isva
|
||||
it { should validate_acceptance_of :${0} }
|
||||
snippet isvc
|
||||
it { should validate_confirmation_of :${0} }
|
||||
snippet isvn
|
||||
it { should validate_numericality_of :${0} }
|
||||
snippet isvp
|
||||
it { should validate_presence_of :${0} }
|
||||
snippet isvu
|
||||
it { should validate_uniqueness_of :${0} }
|
||||
#ShouldaMatchers#ActiveRecord
|
||||
snippet isana
|
||||
it { should accept_nested_attributes_for :${0} }
|
||||
snippet isbt
|
||||
it { should belong_to :${0} }
|
||||
snippet isbtcc
|
||||
it { should belong_to(:${1}).counter_cache ${0:true} }
|
||||
snippet ishbtm
|
||||
it { should have_and_belong_to_many :${0} }
|
||||
snippet isbv
|
||||
it { should be_valid }
|
||||
snippet ishc
|
||||
it { should have_db_column :${0} }
|
||||
snippet ishi
|
||||
it { should have_db_index :${0} }
|
||||
snippet ishm
|
||||
it { should have_many :${0} }
|
||||
snippet ishmt
|
||||
it { should have_many(:${1}).through :${0} }
|
||||
snippet isho
|
||||
it { should have_one :${0} }
|
||||
snippet ishro
|
||||
it { should have_readonly_attribute :${0} }
|
||||
snippet iss
|
||||
it { should serialize :${0} }
|
||||
snippet isres
|
||||
it { should respond_to :${0} }
|
||||
snippet isresw
|
||||
it { should respond_to(:${1}).with(${0}).arguments }
|
||||
snippet super_call
|
||||
${1:super_class}.instance_method(:${0:method}).bind(self).call
|
@ -1,7 +1,3 @@
|
||||
########################################
|
||||
# Ruby snippets - for Rails, see below #
|
||||
########################################
|
||||
|
||||
# encoding for Ruby 1.9
|
||||
snippet enc
|
||||
# encoding: utf-8
|
||||
@ -595,538 +591,3 @@ snippet pry
|
||||
require 'pry'; binding.pry
|
||||
snippet strf
|
||||
strftime("${1:%Y-%m-%d %H:%M:%S %z}")${0}
|
||||
#############################################
|
||||
# Rails snippets - for pure Ruby, see above #
|
||||
#############################################
|
||||
snippet art
|
||||
assert_redirected_to ${1::action => "${2:index}"}
|
||||
snippet artnp
|
||||
assert_redirected_to ${1:parent}_${2:child}_path(${3:@$1}, ${0:@$2})
|
||||
snippet artnpp
|
||||
assert_redirected_to ${1:parent}_${2:child}_path(${0:@$1})
|
||||
snippet artp
|
||||
assert_redirected_to ${1:model}_path(${0:@$1})
|
||||
snippet artpp
|
||||
assert_redirected_to ${0:model}s_path
|
||||
snippet asd
|
||||
assert_difference "${1:Model}.${2:count}", ${3:1} do
|
||||
${0}
|
||||
end
|
||||
snippet asnd
|
||||
assert_no_difference "${1:Model}.${2:count}" do
|
||||
${0}
|
||||
end
|
||||
snippet asre
|
||||
assert_response :${1:success}, @response.body
|
||||
snippet asrj
|
||||
assert_rjs :${1:replace}, "${0:dom id}"
|
||||
snippet ass assert_select(..)
|
||||
assert_select '${1:path}', :${2:text} => '${3:inner_html' ${4:do}
|
||||
snippet ba
|
||||
before_action :${0:method}
|
||||
snippet bf
|
||||
before_filter :${0:method}
|
||||
snippet bt
|
||||
belongs_to :${0:association}
|
||||
snippet btp
|
||||
belongs_to :${1:association}, :polymorphic => true
|
||||
snippet crw
|
||||
cattr_accessor :${0:attr_names}
|
||||
snippet defcreate
|
||||
def create
|
||||
@${1:model_class_name} = ${2:ModelClassName}.new(params[:$1])
|
||||
|
||||
respond_to do |format|
|
||||
if @$1.save
|
||||
flash[:notice] = '$2 was successfully created.'
|
||||
format.html { redirect_to(@$1) }
|
||||
format.xml { render :xml => @$1, :status => :created, :location => @$1 }
|
||||
else
|
||||
format.html { render :action => "new" }
|
||||
format.xml { render :xml => @$1.errors, :status => :unprocessable_entity }
|
||||
end
|
||||
end
|
||||
end
|
||||
snippet defdestroy
|
||||
def destroy
|
||||
@${1:model_class_name} = ${2:ModelClassName}.find(params[:id])
|
||||
@$1.destroy
|
||||
|
||||
respond_to do |format|
|
||||
format.html { redirect_to($1s_url) }
|
||||
format.xml { head :ok }
|
||||
end
|
||||
end
|
||||
snippet defedit
|
||||
def edit
|
||||
@${1:model_class_name} = ${0:ModelClassName}.find(params[:id])
|
||||
end
|
||||
snippet defindex
|
||||
def index
|
||||
@${1:model_class_name} = ${2:ModelClassName}.all
|
||||
|
||||
respond_to do |format|
|
||||
format.html # index.html.erb
|
||||
format.xml { render :xml => @$1s }
|
||||
end
|
||||
end
|
||||
snippet defnew
|
||||
def new
|
||||
@${1:model_class_name} = ${2:ModelClassName}.new
|
||||
|
||||
respond_to do |format|
|
||||
format.html # new.html.erb
|
||||
format.xml { render :xml => @$1 }
|
||||
end
|
||||
end
|
||||
snippet defshow
|
||||
def show
|
||||
@${1:model_class_name} = ${2:ModelClassName}.find(params[:id])
|
||||
|
||||
respond_to do |format|
|
||||
format.html # show.html.erb
|
||||
format.xml { render :xml => @$1 }
|
||||
end
|
||||
end
|
||||
snippet defupdate
|
||||
def update
|
||||
@${1:model_class_name} = ${2:ModelClassName}.find(params[:id])
|
||||
|
||||
respond_to do |format|
|
||||
if @$1.update_attributes(params[:$1])
|
||||
flash[:notice] = '$2 was successfully updated.'
|
||||
format.html { redirect_to(@$1) }
|
||||
format.xml { head :ok }
|
||||
else
|
||||
format.html { render :action => "edit" }
|
||||
format.xml { render :xml => @$1.errors, :status => :unprocessable_entity }
|
||||
end
|
||||
end
|
||||
end
|
||||
snippet dele delegate .. to
|
||||
delegate :${1:methods}, :to => :${0:object}
|
||||
snippet dele delegate .. to .. prefix .. allow_nil
|
||||
delegate :${1:methods}, :to => :${2:object}, :prefix => :${3:prefix}, :allow_nil => ${0:allow_nil}
|
||||
snippet flash
|
||||
flash[:${1:notice}] = "${0}"
|
||||
snippet habtm
|
||||
has_and_belongs_to_many :${1:object}, :join_table => "${2:table_name}", :foreign_key => "${3}_id"
|
||||
snippet hm
|
||||
has_many :${0:object}
|
||||
snippet hmd
|
||||
has_many :${1:other}s, :class_name => "${2:$1}", :foreign_key => "${3:$1}_id", :dependent => :destroy
|
||||
snippet hmt
|
||||
has_many :${1:object}, :through => :${0:object}
|
||||
snippet ho
|
||||
has_one :${0:object}
|
||||
snippet hod
|
||||
has_one :${1:object}, dependent: :${0:destroy}
|
||||
snippet i18
|
||||
I18n.t('${1:type.key}')
|
||||
snippet ist
|
||||
<%= image_submit_tag("${1:agree.png}", :id => "${2:id}"${0} %>
|
||||
snippet log
|
||||
Rails.logger.${1:debug} ${0}
|
||||
snippet log2
|
||||
RAILS_DEFAULT_LOGGER.${1:debug} ${0}
|
||||
snippet logd
|
||||
logger.debug { "${1:message}" }
|
||||
snippet loge
|
||||
logger.error { "${1:message}" }
|
||||
snippet logf
|
||||
logger.fatal { "${1:message}" }
|
||||
snippet logi
|
||||
logger.info { "${1:message}" }
|
||||
snippet logw
|
||||
logger.warn { "${1:message}" }
|
||||
snippet mapc
|
||||
${1:map}.${2:connect} '${0:controller/:action/:id}'
|
||||
snippet mapca
|
||||
${1:map}.catch_all "*${2:anything}", :controller => "${3:default}", :action => "${4:error}"
|
||||
snippet mapr
|
||||
${1:map}.resource :${0:resource}
|
||||
snippet maprs
|
||||
${1:map}.resources :${0:resource}
|
||||
snippet mapwo
|
||||
${1:map}.with_options :${2:controller} => '${3:thing}' do |$3|
|
||||
${0}
|
||||
end
|
||||
|
||||
###############################
|
||||
# model callback snippets #
|
||||
###############################
|
||||
|
||||
# before callback
|
||||
snippet mbv
|
||||
before_validation :${0:method}
|
||||
snippet mbc
|
||||
before_create :${0:method}
|
||||
snippet mbu
|
||||
before_update :${0:method}
|
||||
snippet mbs
|
||||
before_save :${0:method}
|
||||
snippet mbd
|
||||
before_destroy :${0:method}
|
||||
|
||||
# after callback
|
||||
snippet mav
|
||||
after_validation :${0:method}
|
||||
snippet maf
|
||||
after_find :${0:method}
|
||||
snippet mat
|
||||
after_touch :${0:method}
|
||||
snippet macr
|
||||
after_create :${0:method}
|
||||
snippet mau
|
||||
after_update :${0:method}
|
||||
snippet mas
|
||||
after_save :${0:method}
|
||||
snippet mad
|
||||
after_destroy :${0:method}
|
||||
|
||||
# around callback
|
||||
snippet marc
|
||||
around_create :${0:method}
|
||||
snippet maru
|
||||
around_update :${0:method}
|
||||
snippet mars
|
||||
around_save :${0:method}
|
||||
snippet mard
|
||||
around_destroy :${0:method}
|
||||
|
||||
snippet mcht
|
||||
change_table :${1:table_name} do |t|
|
||||
${0}
|
||||
end
|
||||
snippet mp
|
||||
map(&:${0:id})
|
||||
snippet mrw
|
||||
mattr_accessor :${0:attr_names}
|
||||
snippet oa
|
||||
order("${0:field}")
|
||||
snippet od
|
||||
order("${0:field} DESC")
|
||||
snippet pa
|
||||
params[:${1:id}]
|
||||
snippet ra
|
||||
render :action => "${0:action}"
|
||||
snippet ral
|
||||
render :action => "${1:action}", :layout => "${0:layoutname}"
|
||||
snippet rest
|
||||
respond_to do |format|
|
||||
format.${1:html} { ${0} }
|
||||
end
|
||||
snippet rf
|
||||
render :file => "${0:filepath}"
|
||||
snippet rfu
|
||||
render :file => "${1:filepath}", :use_full_path => ${0:false}
|
||||
snippet ri
|
||||
render :inline => "${0:<%= 'hello' %>}"
|
||||
snippet ril
|
||||
render :inline => "${1:<%= 'hello' %>}", :locals => { ${2::name} => "${3:value}"${0} }
|
||||
snippet rit
|
||||
render :inline => "${1:<%= 'hello' %>}", :type => ${0::rxml}
|
||||
snippet rjson
|
||||
render :json => ${0:text to render}
|
||||
snippet rl
|
||||
render :layout => "${0:layoutname}"
|
||||
snippet rn
|
||||
render :nothing => ${0:true}
|
||||
snippet rns
|
||||
render :nothing => ${1:true}, :status => ${0:401}
|
||||
snippet rp
|
||||
render :partial => "${0:item}"
|
||||
snippet rpc
|
||||
render :partial => "${1:item}", :collection => ${0:@$1s}
|
||||
snippet rpl
|
||||
render :partial => "${1:item}", :locals => { :${2:$1} => ${0:@$1}
|
||||
snippet rpo
|
||||
render :partial => "${1:item}", :object => ${0:@$1}
|
||||
snippet rps
|
||||
render :partial => "${1:item}", :status => ${0:500}
|
||||
snippet rt
|
||||
render :text => "${0:text to render}"
|
||||
snippet rtl
|
||||
render :text => "${1:text to render}", :layout => "${0:layoutname}"
|
||||
snippet rtlt
|
||||
render :text => "${1:text to render}", :layout => ${0:true}
|
||||
snippet rts
|
||||
render :text => "${1:text to render}", :status => ${0:401}
|
||||
snippet ru
|
||||
render :update do |${1:page}|
|
||||
$1.${0}
|
||||
end
|
||||
snippet rxml
|
||||
render :xml => ${0:text to render}
|
||||
snippet sc
|
||||
scope :${1:name}, -> { where(${2:field}: ${0:value}) }
|
||||
snippet sl
|
||||
scope :${1:name}, lambda do |${2:value}|
|
||||
where("${3:field = ?}", ${0:bind var})
|
||||
end
|
||||
snippet sha1
|
||||
Digest::SHA1.hexdigest(${0:string})
|
||||
snippet sweeper
|
||||
class ${1:ModelClassName}Sweeper < ActionController::Caching::Sweeper
|
||||
observe $1
|
||||
|
||||
def after_save(${0:model_class_name})
|
||||
expire_cache($2)
|
||||
end
|
||||
|
||||
def after_destroy($2)
|
||||
expire_cache($2)
|
||||
end
|
||||
|
||||
def expire_cache($2)
|
||||
expire_page
|
||||
end
|
||||
end
|
||||
snippet va validates_associated
|
||||
validates_associated :${0:attribute}
|
||||
snippet va validates .., :acceptance => true
|
||||
validates :${0:terms}, :acceptance => true
|
||||
snippet vc
|
||||
validates :${0:attribute}, :confirmation => true
|
||||
snippet ve
|
||||
validates :${1:attribute}, :exclusion => { :in => ${0:%w( mov avi )} }
|
||||
snippet vf
|
||||
validates :${1:attribute}, :format => { :with => /${0:regex}/ }
|
||||
snippet vi
|
||||
validates :${1:attribute}, :inclusion => { :in => %w(${0: mov avi }) }
|
||||
snippet vl
|
||||
validates :${1:attribute}, :length => { :in => ${2:3}..${0:20} }
|
||||
snippet vn
|
||||
validates :${0:attribute}, :numericality => true
|
||||
snippet vp
|
||||
validates :${0:attribute}, :presence => true
|
||||
snippet vu
|
||||
validates :${0:attribute}, :uniqueness => true
|
||||
snippet format
|
||||
format.${1:js|xml|html} { ${0} }
|
||||
snippet wc
|
||||
where(${1:"conditions"}${0:, bind_var})
|
||||
snippet wf
|
||||
where(${1:field} => ${0:value})
|
||||
snippet xdelete
|
||||
xhr :delete, :${1:destroy}, :id => ${2:1}
|
||||
snippet xget
|
||||
xhr :get, :${1:show}, :id => ${2:1}
|
||||
snippet xpost
|
||||
xhr :post, :${1:create}, :${2:object} => { ${0} }
|
||||
snippet xput
|
||||
xhr :put, :${1:update}, :id => ${2:1}, :${3:object} => { ${4} }
|
||||
snippet test
|
||||
test "should ${1:do something}" do
|
||||
${0}
|
||||
end
|
||||
###########################
|
||||
# migrations snippets #
|
||||
###########################
|
||||
snippet mac
|
||||
add_column :${1:table_name}, :${2:column_name}, :${0:data_type}
|
||||
snippet mai
|
||||
add_index :${1:table_name}, :${0:column_name}
|
||||
snippet mrc
|
||||
remove_column :${1:table_name}, :${0:column_name}
|
||||
snippet mrnc
|
||||
rename_column :${1:table_name}, :${2:old_column_name}, :${0:new_column_name}
|
||||
snippet mcc
|
||||
change_column :${1:table}, :${2:column}, :${0:type}
|
||||
snippet mnc
|
||||
t.${1:string} :${2:title}${3:, null: false}
|
||||
snippet mct
|
||||
create_table :${1:table_name} do |t|
|
||||
${0}
|
||||
end
|
||||
snippet migration class .. < ActiveRecord::Migration .. def up .. def down .. end
|
||||
class ${1:class_name} < ActiveRecord::Migration
|
||||
def up
|
||||
${0}
|
||||
end
|
||||
|
||||
def down
|
||||
end
|
||||
end
|
||||
snippet migration class .. < ActiveRecord::Migration .. def change .. end
|
||||
class ${1:class_name} < ActiveRecord::Migration
|
||||
def change
|
||||
${0}
|
||||
end
|
||||
end
|
||||
snippet trc
|
||||
t.remove :${0:column}
|
||||
snippet tre
|
||||
t.rename :${1:old_column_name}, :${2:new_column_name}
|
||||
${0}
|
||||
snippet tref
|
||||
t.references :${0:model}
|
||||
snippet tcb
|
||||
t.boolean :${1:title}
|
||||
${0}
|
||||
snippet tcbi
|
||||
t.binary :${1:title}, :limit => ${2:2}.megabytes
|
||||
${0}
|
||||
snippet tcd
|
||||
t.decimal :${1:title}, :precision => ${2:10}, :scale => ${3:2}
|
||||
${0}
|
||||
snippet tcda
|
||||
t.date :${1:title}
|
||||
${0}
|
||||
snippet tcdt
|
||||
t.datetime :${1:title}
|
||||
${0}
|
||||
snippet tcf
|
||||
t.float :${1:title}
|
||||
${0}
|
||||
snippet tch
|
||||
t.change :${1:name}, :${2:string}, :${3:limit} => ${4:80}
|
||||
${0}
|
||||
snippet tci
|
||||
t.integer :${1:title}
|
||||
${0}
|
||||
snippet tcl
|
||||
t.integer :lock_version, :null => false, :default => 0
|
||||
${0}
|
||||
snippet tcr
|
||||
t.references :${1:taggable}, :polymorphic => { :default => '${2:Photo}' }
|
||||
${0}
|
||||
snippet tcs
|
||||
t.string :${1:title}
|
||||
${0}
|
||||
snippet tct
|
||||
t.text :${1:title}
|
||||
${0}
|
||||
snippet tcti
|
||||
t.time :${1:title}
|
||||
${0}
|
||||
snippet tcts
|
||||
t.timestamp :${1:title}
|
||||
${0}
|
||||
snippet tctss
|
||||
t.timestamps
|
||||
${0}
|
||||
##########################
|
||||
# Rspec snippets #
|
||||
##########################
|
||||
snippet desc
|
||||
describe ${1:`substitute(substitute(vim_snippets#Filename(), '_spec$', '', ''), '\(_\|^\)\(.\)', '\u\2', 'g')`} do
|
||||
${0}
|
||||
end
|
||||
snippet descm
|
||||
describe "${1:#method}" do
|
||||
${0:pending "Not implemented"}
|
||||
end
|
||||
snippet cont
|
||||
context "${1:message}" do
|
||||
${0}
|
||||
end
|
||||
snippet bef
|
||||
before :${1:each} do
|
||||
${0}
|
||||
end
|
||||
snippet aft
|
||||
after :${1:each} do
|
||||
${0}
|
||||
end
|
||||
snippet let
|
||||
let(:${1:object}) { ${0} }
|
||||
snippet let!
|
||||
let!(:${1:object}) { ${0} }
|
||||
snippet subj
|
||||
subject { ${0} }
|
||||
snippet s.
|
||||
subject.${0:method}
|
||||
snippet spec
|
||||
specify { subject.${0} }
|
||||
snippet exp
|
||||
expect(${1:object}).to ${0}
|
||||
snippet expb
|
||||
expect { ${1:object} }.to ${0}
|
||||
snippet experr
|
||||
expect { ${1:object} }.to raise_error ${2:StandardError}, /${0:message_regex}/
|
||||
snippet shared
|
||||
shared_examples ${0:"shared examples name"}
|
||||
snippet ibl
|
||||
it_behaves_like ${0:"shared examples name"}
|
||||
snippet it
|
||||
it "${1:spec_name}" do
|
||||
${0}
|
||||
end
|
||||
snippet its
|
||||
its(:${1:method}) { should ${0} }
|
||||
snippet is
|
||||
it { should ${0} }
|
||||
snippet isn
|
||||
it { should_not ${0} }
|
||||
#ShouldaMatchers#ActionController
|
||||
snippet isfp
|
||||
it { should filter_param :${0:key} }
|
||||
snippet isrt
|
||||
it { should redirect_to ${0:url} }
|
||||
snippet isrtp
|
||||
it { should render_template ${0} }
|
||||
snippet isrwl
|
||||
it { should render_with_layout ${0} }
|
||||
snippet isrf
|
||||
it { should rescue_from ${0:exception} }
|
||||
snippet isrw
|
||||
it { should respond_with ${0:status} }
|
||||
snippet isr
|
||||
it { should route(:${1:method}, '${0:path}') }
|
||||
snippet isss
|
||||
it { should set_session :${0:key} }
|
||||
snippet issf
|
||||
it { should set_the_flash('${0}') }
|
||||
#ShouldaMatchers#ActiveModel
|
||||
snippet isama
|
||||
it { should allow_mass_assignment_of :${0} }
|
||||
snippet isav
|
||||
it { should allow_value(${1}).for :${0} }
|
||||
snippet isee
|
||||
it { should ensure_exclusion_of :${0} }
|
||||
snippet isei
|
||||
it { should ensure_inclusion_of :${0} }
|
||||
snippet isel
|
||||
it { should ensure_length_of :${0} }
|
||||
snippet isva
|
||||
it { should validate_acceptance_of :${0} }
|
||||
snippet isvc
|
||||
it { should validate_confirmation_of :${0} }
|
||||
snippet isvn
|
||||
it { should validate_numericality_of :${0} }
|
||||
snippet isvp
|
||||
it { should validate_presence_of :${0} }
|
||||
snippet isvu
|
||||
it { should validate_uniqueness_of :${0} }
|
||||
#ShouldaMatchers#ActiveRecord
|
||||
snippet isana
|
||||
it { should accept_nested_attributes_for :${0} }
|
||||
snippet isbt
|
||||
it { should belong_to :${0} }
|
||||
snippet isbtcc
|
||||
it { should belong_to(:${1}).counter_cache ${0:true} }
|
||||
snippet ishbtm
|
||||
it { should have_and_belong_to_many :${0} }
|
||||
snippet isbv
|
||||
it { should be_valid }
|
||||
snippet ishc
|
||||
it { should have_db_column :${0} }
|
||||
snippet ishi
|
||||
it { should have_db_index :${0} }
|
||||
snippet ishm
|
||||
it { should have_many :${0} }
|
||||
snippet ishmt
|
||||
it { should have_many(:${1}).through :${0} }
|
||||
snippet isho
|
||||
it { should have_one :${0} }
|
||||
snippet ishro
|
||||
it { should have_readonly_attribute :${0} }
|
||||
snippet iss
|
||||
it { should serialize :${0} }
|
||||
snippet isres
|
||||
it { should respond_to :${0} }
|
||||
snippet isresw
|
||||
it { should respond_to(:${1}).with(${0}).arguments }
|
||||
snippet super_call
|
||||
${1:super_class}.instance_method(:${0:method}).bind(self).call
|
||||
|
Loading…
Reference in New Issue
Block a user