Homebrew is a great little package manager for OS X. If you haven't already, installing it is pretty easy:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
3 ways to define a JavaScript class | |
Introduction | |
JavaScript is a very flexible object-oriented language when it comes to syntax. In this article you can find three ways of defining and instantiating an object. Even if you have already picked your favorite way of doing it, it helps to know some alternatives in order to read other people's code. | |
It's important to note that there are no classes in JavaScript. Functions can be used to somewhat simulate classes, but in general JavaScript is a class-less language. Everything is an object. And when it comes to inheritance, objects inherit from objects, not classes from classes as in the "class"-ical languages. | |
1. Using a function | |
This is probably one of the most common ways. You define a normal JavaScript function and then create an object by using the new keyword. To define properties and methods for an object created using function(), you use the this keyword, as seen in the following example. | |
function Apple (type) { |
from myapp.utils import set_current_user | |
class CurrentUserMiddleware: | |
def process_request(self, request): | |
set_current_user(getattr(request, 'user', None)) | |
# For example, run "npm install" | |
docker run -v "$PWD":/usr/src/app -w /usr/src/app node:4 npm install | |
# This command creates a container (downloading one first if you don't have it locally), runs the command in a current directory and quits the container | |
# Great Success! |
# http://stackoverflow.com/questions/222877/how-to-use-super-in-python | |
class SomeBaseClass(object): | |
def __init__(self): | |
print('SomeBaseClass.__init__(self) called') | |
class ChildClass(SomeBaseClass): | |
def __init__(self): | |
print('ChildClass.__init__(self) called') | |
SomeBaseClass.__init__(self) |
[unix_http_server] | |
file=/tmp/supervisor.sock ; path to your socket file | |
[supervisord] | |
logfile=/var/log/supervisord/supervisord.log ; supervisord log file | |
logfile_maxbytes=50MB ; maximum size of logfile before rotation | |
logfile_backups=10 ; number of backed up logfiles | |
loglevel=error ; info, debug, warn, trace | |
pidfile=/var/run/supervisord.pid ; pidfile location | |
nodaemon=false ; run supervisord as a daemon |
import sys,os | |
import curses | |
def draw_menu(stdscr): | |
k = 0 | |
cursor_x = 0 | |
cursor_y = 0 | |
# Clear and refresh the screen for a blank canvas | |
stdscr.clear() |
version: '2' | |
services: | |
myapp: | |
build: . | |
container_name: "myapp" | |
image: debian/latest | |
environment: | |
- NODE_ENV=development | |
- FOO=bar | |
volumes: |
""" | |
base_werkzeug_app.py | |
==================== | |
Example of a simple app written using werkzeug library. | |
""" | |
import json | |
import psycopg2 | |
from werkzeug.exceptions import HTTPException |
SELECT | |
tc.constraint_name, tc.table_name, kcu.column_name, | |
ccu.table_name AS foreign_table_name, | |
ccu.column_name AS foreign_column_name | |
FROM | |
information_schema.table_constraints AS tc | |
JOIN information_schema.key_column_usage AS kcu | |
ON tc.constraint_name = kcu.constraint_name | |
JOIN information_schema.constraint_column_usage AS ccu | |
ON ccu.constraint_name = tc.constraint_name |