These are chat archives for synrc/n2o

7th
Aug 2015
asakura-kazumi
@asakura-kazumi
Aug 07 2015 05:26
и правда. раньше я бы так и сделал. а тут... учебу бросить, что ли. а то и в универе такая же фигня, хвостов нахватал
Oleg Zinchenko
@cystbear
Aug 07 2015 07:00
рекурсивных хвостов?
@asakura-kazumi шо могу сказать, если есть вопросы по kvs спрашуй
@asakura-kazumi мы тут с пацантре запилили свой квс на Макса подходах, просто читни доку отсуда
https://github.com/tapsters/cocktail только доку
юзать эту либу не надо
просто доку прочитай, это дока вымучена месяцами распросов Макса и @m-2k как оно работает
концепция в kvs гениальная (только надо быстрый сторедж)
asakura-kazumi
@asakura-kazumi
Aug 07 2015 07:49
а есть схема какая-нибудь нарисованная? совсем не понимаю, зачем нужен feed_id
Oleg Zinchenko
@cystbear
Aug 07 2015 07:49
не, схемы нет
вот пример, у тебя есть юзер, ты хочешь получить посты которые должны быть в его ленте
не его личные посты а посты в его ленте
asakura-kazumi
@asakura-kazumi
Aug 07 2015 07:50
угу
Oleg Zinchenko
@cystbear
Aug 07 2015 07:50
ты делаешь 2 запроса
точнее 2 опереции
1) находишь хвост этого вида
как?
надо сделать запрос в таблицу "feed" или любую другую котора у тебя используется для хранения хвостов
ЗАМЕЧАНИЕ: все запросы идут только по ID
asakura-kazumi
@asakura-kazumi
Aug 07 2015 07:52
т.е., находим ленту по его id?
*ее
Oleg Zinchenko
@cystbear
Aug 07 2015 07:52
так вот делаешь запрос в таблицу с хвостами, что бы найти хвост (ID головы списка)
по какому id ты делаешь запрос в таблицу с хвостами?
по самодельному {lenta, UserId}
lenta -- это атом который говорит на о чем-то
UserId -- это ID того юзера ленту которого ты хочешь посмотреть
так вот
{lenta, UserId} -- это и есть feed_id
шо ты получишь у результате этого запроса?
ты получишь такое
{top= <ID>, count=<число>}
берешь top_id и делаешь запрос в таблицу со своими постами, получишь первый пост
получишь {id=<ID> next=<ID>, ДАЛЬШЕ ТВОИ ПОЛЯ}
Oleg Zinchenko
@cystbear
Aug 07 2015 07:57
хоч следуйщий пост делаешь запрос в таблицу постов с NEXT_ID
в kvs встроенные помогаторы, которые ЗА_ТЕБЯ катаются по этому списку
поправка
получишь {id=<ID> next=<ID>, prev=undefined, ДАЛЬШЕ ТВОИ ПОЛЯ}
prev=undefined -- потому что это голова списка, самый парвый элемент и прев у него нет
как понял @asakura-kazumi
?
asakura-kazumi
@asakura-kazumi
Aug 07 2015 07:59
ага, попробую
позже отпишусь
как получится
правда, не знаю, как заставить работать fs в винде
Oleg Zinchenko
@cystbear
Aug 07 2015 08:00
ставь вагрант и убунту
asakura-kazumi
@asakura-kazumi
Aug 07 2015 08:01
у меня федора в дуалбуте. дома, может, поставлю
Oleg Zinchenko
@cystbear
Aug 07 2015 08:01
ок
asakura-kazumi
@asakura-kazumi
Aug 07 2015 08:01
ладно. спасибо за помощь )
Oleg Zinchenko
@cystbear
Aug 07 2015 08:02
надеюсь понятно объяснил, если не понял, то не сцы, я сам месяц понимал
это нормально не понять с первого раза
asakura-kazumi
@asakura-kazumi
Aug 07 2015 08:03
просто туториал нужен в виде учебника. короткие ридми не всегда помогают. а так, обучаемость у меня хорошая, если мозг разогнать и не лениться
Oleg Zinchenko
@cystbear
Aug 07 2015 08:07
заебал про лень трындеть
asakura-kazumi
@asakura-kazumi
Aug 07 2015 08:07
ахахах ) пишу-пишу )
Andy
@m-2k
Aug 07 2015 09:32
Я разве не писал туториал как добавить свою БД на основе kvs?
e4sw.tumblr.com
asakura-kazumi
@asakura-kazumi
Aug 07 2015 09:33
а, черт
я ж читал
забыл совсем
дадада
вспомнил
помнится, там еще полуголая девица была. на работе лучше не открывать
Andy
@m-2k
Aug 07 2015 09:43
Да
Но оно немного не актуально по конфигам с новой n2o
asakura-kazumi
@asakura-kazumi
Aug 07 2015 09:45
апи-то то же?
Oleg Zinchenko
@cystbear
Aug 07 2015 09:45
@m-2k ты смотрел то что я объяснял?
оно хоть релевантно?
нахуй АПИ, подход главное понять
asakura-kazumi
@asakura-kazumi
Aug 07 2015 09:55
а так можно: -record(foo, {?CONTAINER, ?ITERATOR(bar)}). ?
Oleg Zinchenko
@cystbear
Aug 07 2015 09:56
а твои поля где?
полезная нагрузка
asakura-kazumi
@asakura-kazumi
Aug 07 2015 09:57

-record(comic, {?CONTAINER,
name=<<"Noname">>,
author_ids=[]
}).

-record(chapter, {?CONTAINER, ?ITERATOR(comic),
name=<<"Noname">>
}).

-record(comment, {?ITERATOR(chapter),
user_id=0,
text=<<"Some text">>
}).

asakura-kazumi
@asakura-kazumi
Aug 07 2015 10:06
Вот, чего я хочу добиться: https://pp.vk.me/c623316/v623316076/4a132/ejMxkFhIO10.jpg
у одного автора может быть несколько комиксов, а один комикс может быть нарисован больше, чем одним автоом
собственно, это я для себя делаю, но, если знакомые захотят...
asakura-kazumi
@asakura-kazumi
Aug 07 2015 10:12
не. authors - лишнее. комиксы создают ведь users
frames - картинки
Andy
@m-2k
Aug 07 2015 10:14
feed_id={comic,Author}
asakura-kazumi
@asakura-kazumi
Aug 07 2015 10:21
feed_id={comic,[Author1, Author2, ...]}
так можно?
Oleg Zinchenko
@cystbear
Aug 07 2015 11:32
@m-2k а не знаешь где в games https://github.com/synrc/games лежат переводы /cc @5HT
шо-то нихуя не могу найти
Oleg Zinchenko
@cystbear
Aug 07 2015 12:45
нашел
translations.js -- файл доступен после make && make install
Namdak Tonpa
@5HT
Aug 07 2015 14:20
так нельзя -record(foo, {?CONTAINER, ?ITERATOR(bar)}). Это множественное наследование.
Множественного наследования нет в KVS.