Skip to content

Instantly share code, notes, and snippets.

# bad
params[:search_type].present? && params[:search_type] == 'Dashboard'
# good
params[:search_type] == 'Dashboard'
sample_hash = { a: 1, b: 10 }
# bad
sample_hash.merge!({ c: 20, d: 30 })
# good
sample_hash.merge!(c: 20, d: 30)
# bad
properties.present? && properties[:user].present? && properties[:user][:profile].present?
# Better approach
properties.try(:[], :user).try(:[], :profile).present?
employee_city_data = { Bob: 'Banglore', Steve: 'Pune', Joe: 'Ahmedabad' }
# bad
employee_city_data[:Naiya] || 'Ahmedabad'
# good
employee_city_data.fetch(:Naiya, 'Ahmedabad')
const webpack = require('webpack')
environment.plugins.prepend('Provide',
new webpack.ProvidePlugin({
$: 'jquery/src/jquery',
jQuery: 'jquery/src/jquery'
})
)
@NaiyaShah-BTC
NaiyaShah-BTC / application.js
Created April 10, 2019 12:04
Rails - 6 - application.js file after requiring jquery
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require("jquery")
class CreatePosts < ActiveRecord::Migration[6.0]
def change
create_table :posts do |t|
t.string :title, index: { unique: true }
t.timestamps
end
end
end
class Post < ApplicationRecord
validates :title, presence: true
end
User.pluck(:id, :name)
# SELECT users.id, users.name FROM users
# => [[1, 'David'], [2, 'Jeremy'], [3, 'Jose']]
User.limit(1).pluck(:name).first
# SELECT "users"."name" FROM "users" LIMIT ? [["LIMIT", 1]]
# => "David"
User.where(id: 1).pluck(:name).first
# SELECT "users"."name" FROM "users" WHERE "users"."id" = $1
# => "David"