user_send_last_msgs = Message.objects.\
filter(user_sender=token.user_id).\
order_by('-send_date', 'user_receiver').\
distinct('user_receiver')
# distinct('user_receiver') postgres only
user_receive_last_msgs = Message.objects.\
filter(user_receiver=token.user_id).\
order_by('-send_date', 'user_sender').\
distinct('user_sender')
for message in last_msgs:
print message.user_sender
print message.user_receiver
print message.send_date
print message.message
print message.status
[dbag]
chdir = /home/dbag/dbs/mtest
virtualenv = /home/dbag/venv/
socket = /home/dbag/dbs/dbs.sock
vacuum=True
max-requests=10000
harakiri=60
daemonize=/home/dbag/dbs/uwsgi.log
master = True
workers = 8
module = mtest.wsgi:application
uid = dbag
gid = dbag
chmod-socket = 600
gulp.task('sass', function () {
gulp.src('/path/to/**/*.sass')
.pipe(sourcemaps.init())
.pipe(sass({}))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('css/dir'));
});
Для фронтенда выбрал angular - двухсторонний биндинг очень одобная штука, как по мне.вопрос в другом, если у тебя большой поток, то как себя поведет ангуляр тебе могут сказать только гуру. Не спеши привязывать себя к фреймворку - лучше сделай прототип и посмотри как он работает в твоей схеме. Желательно сразу на второй версии или хотя б с использованием ES2015
3. Можно упороться и сделать на ErlangwhatsUp не упоролся, а просто сделал и держит фб. Главное, что платформа берет на себя много вопросов по обслуживанию кода на множестве нод. И что твой код не уронит всю платформу при апдейте