Skip to content

Instantly share code, notes, and snippets.

View Thivieira's full-sized avatar

Thiago Vieira Thivieira

View GitHub Profile
@Thivieira
Thivieira / Include-in-Sequelize.md
Created May 5, 2018 00:01 — forked from zcaceres/Include-in-Sequelize.md
using Include in sequelize

'Include' in Sequelize: The One Confusing Query That You Should Memorize

When querying your database in Sequelize, you'll often want data associated with a particular model which isn't in the model's table directly. This data is usually typically associated through join tables (e.g. a 'hasMany' or 'belongsToMany' association), or a foreign key (e.g. a 'hasOne' or 'belongsTo' association).

When you query, you'll receive just the rows you've looked for. With eager loading, you'll also get any associated data. For some reason, I can never remember the proper way to do eager loading when writing my Sequelize queries. I've seen others struggle with the same thing.

Eager loading is confusing because the 'include' that is uses has unfamiliar fields is set in an array rather than just an object.

So let's go through the one query that's worth memorizing to handle your eager loading.

The Basic Query

@Thivieira
Thivieira / nearby-coordinates.sql
Created April 19, 2018 03:25 — forked from statickidz/nearby-coordinates.sql
Ordering with SQL by nearest latitude & longitude coordinates (MySQL & SQLite)
---
METHOD 1
This should roughly sort the items on distance in MySQL, and should work in SQLite.
If you need to sort them preciser, you could try using the Pythagorean theorem (a^2 + b^2 = c^2) to get the exact distance.
---
SELECT *
FROM table
ORDER BY ((lat-$user_lat)*(lat-$user_lat)) + ((lng - $user_lng)*(lng - $user_lng)) ASC
@Thivieira
Thivieira / config.rb
Last active July 7, 2017 03:52 — forked from nathansmith/config.rb
Example config.rb file for Compass
preferred_syntax = :scss
http_path = '/'
css_dir = 'assets/css'
sass_dir = 'assets/scss'
images_dir = 'assets/images'
javascripts_dir = 'assets/js'
relative_assets = true
line_comments = true
# output_style = :compressed
@Thivieira
Thivieira / config.json
Last active December 20, 2016 15:44 — forked from anonymous/config.json
Bootstrap Customizer Config (SKELETON TABLE)
{
"vars": {
"@gray-base": "#000",
"@gray-darker": "lighten(@gray-base, 13.5%)",
"@gray-dark": "lighten(@gray-base, 20%)",
"@gray": "lighten(@gray-base, 33.5%)",
"@gray-light": "lighten(@gray-base, 46.7%)",
"@gray-lighter": "lighten(@gray-base, 93.5%)",
"@brand-primary": "darken(#428bca, 6.5%)",
"@brand-success": "#5cb85c",