Skip to content

Instantly share code, notes, and snippets.

View revskill10's full-sized avatar
🎯
Focusing

Truong Hoang Dung revskill10

🎯
Focusing
  • Freelancer
  • Haiphong, Vietnam
View GitHub Profile
@revskill10
revskill10 / stored_procedure_service.rb
Created January 17, 2023 07:46 — forked from ys/stored_procedure_service.rb
Execute stored procedure
class StoredProcedureService
def self.instance
@instance ||= StoredProcedureService.new
end
def execute(name, *args)
results = []
begin
connection.execute("CALL #{name}(#{args.join(',')})").each(as: :hash, symbolize_keys: true) do |row|
@revskill10
revskill10 / query.sql
Last active January 15, 2023 22:47
What if we can transform below YAML into this SQL query ?
WITH RECURSIVE tiers (a, b, c) AS MATERIALIZED (
SELECT
*
FROM
"tiers"
WHERE
NOT (
EXISTS (
SELECT
*
@revskill10
revskill10 / arel_helpers.rb
Created January 4, 2023 07:34 — forked from hadees/arel_helpers.rb
Arel Helpers
module ArelHelpers
extend self
def self.included(base)
base.extend self
end
def asterisk(arel_table_or_model)
arel_table, columns = case arel_table_or_model
when Arel::Table
@revskill10
revskill10 / gist:75052127a2ccb18d130fac034c705cb4
Created January 3, 2023 17:41 — forked from kbaribeau/gist:1103102
Ruby single quote escaping madness
Ok, so I'm trying to replace a ' character with \' in a ruby string. I have working code, but it was
*way* too painful getting there for my taste.
Take a look:
ree-1.8.7-2010.02 :001 > single_quote = "\'"
=> "'"
ree-1.8.7-2010.02 :003 > single_quote.gsub(/'/, "\\\'")
=> ""
ree-1.8.7-2010.02 :004 > single_quote.gsub(/'/) {|c| "\\'"}
@revskill10
revskill10 / rpc.rb
Created January 2, 2023 19:02 — forked from ahoward/rpc.rb
clean rpc based javascript helpers for rails' controllers
=begin
ref: https://gist.github.com/ahoward/5752290
web apps nearly always end up needing a plethora of little javascript helper methods: you know, auto-complete forms, populating defaults, validations, etc. these aren't API calls properly, just little tidbits of functionality needed to make the views work.
there is always a question of which controller to hang these methods off of. do you make a global helper controller for all this stuff? do you hang them off the controller in question? how to do share the backend of javascript helper methods across controllers?
step one
@revskill10
revskill10 / decorator.rb
Created December 30, 2022 13:56 — forked from masa16/decorator.rb
Decorator for Ruby similar to Python's decorator
module Decorator
@@decorators = []
def decorate(method_name,*args)
@@decorators << [method_name.to_sym,args]
end
def method_added(method_name)
super
return if @@decorators.empty?
decorators = @@decorators.reverse.map{|name,args| [method(name),args]}
@@decorators = []
@revskill10
revskill10 / SomeController.rb
Created December 16, 2022 14:18 — forked from ktkaushik/SomeController.rb
Using Prawn in your Rails App to download and attach the pdf in your email
require 'pdf_generator'
class TasksController < ApplicationController
include PdfGenerator
def some_action
pdf_generator( download = true )
end
end
@revskill10
revskill10 / gist:de2a856859221a11c4ad3b93ba4dfd6e
Created December 16, 2022 12:24 — forked from regedarek/gist:3734399
Extending models in Rails
# See http://blog.waxman.me/extending-your-models-in-rails-3 for original post
module Extensions
module Popular
module ClassMethods
def most_popular(limit=10)
order('points desc').limit(limit).all
end
end
def popularity
@revskill10
revskill10 / galleries.rb
Created December 16, 2022 10:12 — forked from bbonamin/galleries.rb
ActiveAdmin relationships and related models
# encoding: utf-8
ActiveAdmin.register Gallery do
menu :label => 'Galerías'
# => Índice
index do
column :name
column :description
column :date
default_actions
@revskill10
revskill10 / admin-product.rb
Created December 14, 2022 09:09 — forked from serradura/admin-product.rb
Example: Use Acts-As-Taggable-On gem with Active-Admin and rails observers
ActiveAdmin.register Product do
permit_params :name, :category_id, :description, :text, :slug, :in_slider, :tag_ids => []
filter :category
filter :base_tags
filter :name
filter :text
filter :created_at
filter :updated_at