Tutorial by Examples: ti

The main app file loads the routes file where routes are defined. app.js var express = require('express'); var app = express(); app.use('/', require('./routes')); app.listen('3000'); routes.js var router = require('express').Router(); router.get('/', function(req, res) { res.sen...
Middleware is executed prior to the route execution and can decide whether to execute the router according to the URL. var router = require('express').Router(); router.use(function (req, res, next) { var weekDay = new Date().getDay(); if (weekDay === 0) { res.send('Web is clos...
Say you have implemented some logic to detect attempts to modify an object in the database while the client that submitted changes didn't have the latest modifications. If such case happens, you raise a custom exception ConfictError(detailed_message). Now you want to return an HTTP 409 (Confict) st...
Often times you will see an exception Anti forgery token is meant for user "" but the current user is "username" This is because the Anti-Forgery token is also linked to the current logged-in user. This error appears when a user logs in but their token is still linked to bein...
Haxe is available on Windows, Linux, and OS X. It is distributed in two forms: as an installer, providing an optional Neko VM dependency and configuring haxe and haxelib environment variables; as binaries, providing only the Haxe compiler and package manager. Windows Installer and binaries a...
The tile pane layout is similar to the FlowPane layout. TilePane places all of the nodes in a grid in which each cell, or tile, is the same size. It arranges nodes in neat rows and columns, either horizontally or vertically. import javafx.application.Application; import javafx.scene.Scene;...
#Post to pagerduty.com notification pagerduty { post = https://events.pagerduty.com/generic/2010-04-15/create_event.json contentType = application/json runOnActions = false body = `{ "service_key": "myservicekey", "incident_key": {{.|jso...
The effect of using the * operator on an argument when calling a function is that of unpacking the list or a tuple argument def print_args(arg1, arg2): print(str(arg1) + str(arg2)) a = [1,2] b = tuple([3,4]) print_args(*a) # 12 print_args(*b) # 34 Note that the length of the starr...
CSS ul { list-style: none; counter-reset: list-item-number; /* self nesting counter as name is same for all levels */ } li { counter-increment: list-item-number; } li:before { content: counters(list-item-number, ".") " "; /* usage of counters() function means val...
Build constraints are commonly used to separate normal unit tests from integration tests that require external resources, like a database or network access. To do this, add a custom build constraint to the top of the test file: // +build integration package main import ( "testing&...
We can optimize a simple xor function for only architectures that support unaligned reads/writes by creating two files that define the function and prefixing them with a build constraint (for an actual example of the xor code which is out of scope here, see crypto/cipher/xor.go in the standard libra...
This is a simple but robust core-data set-up for iOS 10+. There are exactly two way to access core-data: viewContext. The viewContext can only be used from the main thread, and only for reading. strong enqueueCoreDataBlock. All writing should be done using enqueueCoreDataBlock. There is no ne...
Get the Source Package from http://typo3.org/download/ and upload this package to your web server. Put it one level above the document root. For this manual, we will use the .tar.gz file. Use the shell to execute the according commands: /var/www/site/htdocs/$ cd .. /var/www/site/$ wget get.typo3....
The spacing should be even and uniform throughout. Improper indentation can cause an IndentationError or cause the program to do something unexpected. The following example raises an IndentationError: a = 7 if a > 5: print "foo" else: print "bar" print "done&qu...
The following example shows a basic main GUI window with a label widget, a toolbar, and a status bar using PyQt4. import sys from PyQt4 import QtGui class App(QtGui.QApplication): def __init__(self, sys_argv): super(App, self).__init__(sys_argv) self.build_ui() ...
The hashlib module allows creating message digest generators via the new method. These generators will turn an arbitrary string into a fixed-length digest: import hashlib h = hashlib.new('sha256') h.update(b'Nobody expects the Spanish Inquisition.') h.digest() # ==> b'.\xdf\xda\xdaVR[\x12\...
This method looks for the existence of browser specific things. This would be more difficult to spoof, but is not guaranteed to be future proof. // Opera 8.0+ var isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0; // Firefox 1.0+ ...
This method gets the user agent and parses it to find the browser. The browser name and version are extracted from the user agent through a regex. Based on these two, the <browser name> <version> is returned. The four conditional blocks following the user agent matching code are meant t...
Let's add a custom operator to multiply a CGSize func *(lhs: CGFloat, rhs: CGSize) -> CGSize{ let height = lhs*rhs.height let width = lhs*rhs.width return CGSize(width: width, height: height) } Now this works let sizeA = CGSize(height:100, width:200) let sizeB = 1.1 * si...
When you are copying a string into a malloced buffer, always remember to add 1 to strlen. char *dest = malloc(strlen(src)); /* WRONG */ char *dest = malloc(strlen(src) + 1); /* RIGHT */ strcpy(dest, src); This is because strlen does not include the trailing \0 in the length. If you take the ...

Page 126 of 505