I hereby claim:
- I am skojin on github.
- I am skojin (https://keybase.io/skojin) on keybase.
- I have a public key ASBIneplQGFfIiZhlB6VN72mbLa_bwt0kBG4NLr-tcJzAwo
To claim this, I am signing this object:
# same as find_in_batches but with order support | |
# @usage InOrderedBatches.new(User.where(...), :updated_at, '2015-01-01'.to_time).each{|records| ... } | |
class InOrderedBatches | |
def initialize(scope, key, start, batch_size: 1000) | |
@scope = scope.order("#{key}, id").limit(batch_size) | |
@key = key | |
@value = start | |
@batch_size = batch_size | |
end |
current_account.items.update_all(['enabled = (SELECT id IN (?))', Array(params[:ids])]) |
#!/bin/sh | |
# test input with jq, if ok then show input, otherwise exit with non 0 exit code | |
# echo '{"success": true}' | jq -e '.success | select(. == true)' # => {"success": true} | |
# echo '{"success": false}' | jq -e '.success | select(. == true)' # => exit code non 0 | |
input=`cat`; | |
if echo "$input" | jq -e "$1" > /dev/null ; then | |
echo "$input" |
FROM crystallang/crystal:0.34.0 as builder | |
RUN apt-get update \ | |
&& apt-get install -y --no-install-recommends build-essential \ | |
apt-transport-https curl ca-certificates gnupg2 apt-utils | |
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash - \ | |
&& apt-get install -y nodejs | |
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ |
def to_permit_rule(h) | |
scalar = [] | |
complex = {} | |
h.each do |k,v| | |
if v.is_a? Array | |
complex[k.to_sym] = [] | |
elsif v.is_a? Hash | |
if v.keys.all?{|vk| vk =~ /\A\d+\z/ } | |
complex[k.to_sym] = to_permit_rule(v.values.first) | |
else |
javascript:(function()%7B(function()%7Bvar url %3D window.location.href.split('%2F')%3Burl%5B0%5D %3D 'http%3A'%3Burl%5B2%5D %3D 'localhost%3A3000'%3Bwindow.open(url.join('%2F'))%3B%7D)()%7D)() |
# SQL timezone time/date related utils | |
module SqlTz | |
extend self | |
# convert time to date with respect to timezone | |
# example: where("#{SqlTz.time_to_date(:created_at)} = ?", Date.today) | |
def date(column) | |
"DATE(DATE_ADD(#{column}, INTERVAL #{Time.current.utc_offset} SECOND))" | |
end |
# export AR model to sql | |
# example: | |
# SqlDump.new( KeyValue.where(..) ).export{ |sql| puts sql } | |
# SqlDump.new( KeyValue.where(..) ).export(file: "key_values_dump.sql") | |
class SqlDump | |
def initialize(scope) | |
@scope = scope | |
@count = 0 | |
end |
I hereby claim:
To claim this, I am signing this object:
# Each record of this class store one extra attribute for each model | |
# Used to store not important data need for reports, data sync, and etc | |
class ExtraValue < ActiveRecord::Base | |
belongs_to :record, polymorphic: true | |
scope :type, ->(klass){ where(record_type: klass) } | |
scope :record, ->(r){ where(record_id: r.id, record_type: r.class) } | |
class << self |