Skip to content

Instantly share code, notes, and snippets.

@absent1706
absent1706 / keys.sublime-keymap
Created July 25, 2016 10:48
Sublime settings
[
{ "keys": ["alt+shift+f"], "command": "reindent" },
{ "keys": ["ctrl+alt+s"], "command": "toggle_side_bar" },
{ "keys": ["ctrl+alt+p"], "command": "prompt_select_workspace" },
{"keys": [ "ctrl+alt+z" ], "command": "insert_snippet", "args": { "name": "Packages/User/my-snippets/localize.sublime-snippet"} },
]
@absent1706
absent1706 / test_timeout.py
Created July 24, 2016 14:39
timeout decorator
import time
from timeout import timeout
class Test(object):
@timeout(2)
def test_a(self, foo, bar):
print foo
time.sleep(1)
print bar
return 'A Done'
class UserProduct(Base):
user_id = Column(BigInteger, ForeignKey('user.user_id'),
primary_key=True)
product_id = Column(BigInteger, ForeignKey('product.product_id'),
primary_key=True)
class Product(Base):
product_id = Column(BigInteger, primary_key=True)
<?php
// in app/Providers/AppServiceProvider
/*namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider
{*/
public function boot()
{
if (\App::environment('local')) {
\Event::listen('Illuminate\Database\Events\QueryExecuted', function ($query) {
"""
!!! Run tests by just typing 'python <this file>', not throw nosetests/your IDE
Before run these tests:
1) make sure that PhantomJS executable is in your PATH (type phantomjs in CLI)
for custom phantomjs location change PHANTOMJS_PATH
2) run app dev server and make sure that BASE_URL is equal to real URL
"""
import unittest
@absent1706
absent1706 / sqlalchemy-orm-find.py
Created June 17, 2016 14:06
sqlalchemy Laravel/Rals/Django-like find() method
def find(db, id_): # db is better to be global IMHO
db.query(self.__class__).filter(self.__class__.__mapper__.primary_key[0] == id_).one()
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
from sqlalchemy import *
from sqlalchemy.orm import relationship, backref, joinedload
class Request(Base):
__tablename__ = 'request'
#################################################################
def compile_query(query):
return str(query.statement.compile(compile_kwargs={"literal_binds": True}))
#################################################################
############################## EXAMPLE ##############################
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
from sqlalchemy import create_engine
from sqlalchemy import create_engine
from sqlalchemy import select
from sqlalchemy import MetaData, Table, Column, String, Integer
engine = create_engine("sqlite://")
metadata = MetaData()
user_table = Table('user', metadata,
Column('id', Integer, primary_key=True),
Column('username', String(50)),
Column('fullname', String(50))
@absent1706
absent1706 / yandex_api_example.php
Created April 8, 2016 13:00
PHP:yandex API example
<?php
/*
Пример программного кода для работы с API сервиса Яндекс.Директ
В примере использован рекомендуемый синтаксис для работы с API сервиса Яндекс.Директ
на языке PHP с использованием протокола JSON и авторизацией по токенам.
Обращаем внимание, что все текстовые данные должны быть в кодировке UTF8