
yopp
21.11.2016
22:41:50
в смысле синтаксис

Cate
21.11.2016
22:41:58
я же не спорю)

yopp
21.11.2016
22:42:15
либо в новой рельсе find_by_sql иначе работает
я же не спорю)
сначала запиши иначе голый запрос, и вместо ? пиши :<имя>

Google

yopp
21.11.2016
22:42:58
например :uid или там :platform_id

Иван
21.11.2016
22:43:25
массив перечисляется
а я чего то вообще не понимаю что вот тут происходит:
WHERE ", params[:uid], platform.id," !=cp.platform_id

yopp
21.11.2016
22:43:42
массив элементами заполняется
[
"SELECT c.* FROM adv_campaigns c left join adv_campaigns_platforms cp ON cp.adv_campaign_id = c.id WHERE ", # 0
params[:uid], # 1
platform.id, # 2
" !=cp.platform_id LEFT JOIN statistics s ON c.id=s.campaign_id AND s.type_id=#{STATS_TYPE_APPROVAL} AND s.uid=? AND s.platform_id=?", # 3
params[:uid], #4
platform.id # 5
]
а find_by_sql ожидает совсем не это
он ожидает ["SELECT ... FROM ... WHERE foo = ? AND bar = ?", foo, bar]
так как в нулевом элементе плейсхолдеров '?' нет то генерируется кривой запрос
SELECT c.* FROM adv_campaigns c left join adv_campaigns_platforms cp ON cp.adv_campaign_id = c.id WHERE;
не уверен почему он вообще работает

Иван
21.11.2016
22:47:46
ну вот 1 и 2 куда должны попасть раз нет плэйсхолдеров?

yopp
21.11.2016
22:48:33
в никуда
потому что нет плейсхолдеров :)

Иван
21.11.2016
22:48:47
ну вот я об этой ошибке и говорил после where

Google

Иван
21.11.2016
22:49:07
что переменные предоставляем, а куда их ставить не указываем

Cate
21.11.2016
22:50:12
так как это вообще должно быть?))

yopp
21.11.2016
22:50:42
я так понимаю подразумевалось что-то в духе:
AdvCampaign.find_by_sql (
[
"SELECT c.* FROM adv_campaigns c left join adv_campaigns_platforms cp ON cp.adv_campaign_id = c.id WHERE AND cp.platform_id != :platform_idLEFT JOIN statistics s ON c.id=s.campaign_id AND s.type_id=#{STATS_TYPE_APPROVAL} AND s.uid=:uid AND s.platform_id=:platform_id",
{
uid: params[:uid],
platform_id: platform.id
}
]
я спать пойду

Denis
22.11.2016
02:49:16
button 'Memory' do
window(:width => 200 ,:height => 95, :title => 'Denis Oster 332-b') do
caption 'Enter the string'
m = edit_line
tempfile = Tempfile.new("tempfile.txt", "/tmp")
tempfile.close
system("echo #{m.text} > #{tempfile.path}")
button('Send', left: 65, top: 65) do
alert %x[cat "#{tempfile.path}" | 'app/bin/memory']
end
end
Почему данный кусок кода не работает?
Ошибок не бьет

Alexander
22.11.2016
03:00:36

Denis
22.11.2016
03:00:58
Это ruby
+shoes

Alexander
22.11.2016
03:02:41
тогда ответ прост - ошибки проглатывает shoes чтобы не смущать юзеров десктопа
врядли остались живые люди кто пробовал даже его

Denis
22.11.2016
03:03:58
Я предполагаю что ошибка в m.text
Что неправильно заносится значение
Ну как именно занести не знаю

Alexander
22.11.2016
03:04:34
напиши m&.text
чтобы ошибку обходить
если там nil
руби видно маленький
конструкции с & не так давно появились

Google

Alexander
22.11.2016
03:07:41
тогда фигач тернари
m ? m.text : nil

Denis
22.11.2016
03:09:44
Ничего
Не выйдет ошибок
Не выдает ошибок
Но и не работает

Alexander
22.11.2016
03:13:20
дебаж построчно через raise m.inspect
и прочее

Denis
22.11.2016
03:15:33
Если просто выводить строку то m не работает, а m.text нормально проходит

Alexander
22.11.2016
03:23:15
inspect должен в любом случае показать что там

Andrey
22.11.2016
04:58:21
интересно как там тот сисадмин

Rafkat
22.11.2016
05:08:10
довайте его обратно

I
22.11.2016
05:18:49
А про тесты так и не написал...

Eugene
22.11.2016
07:33:26

Alex
22.11.2016
07:40:42
Тут или в соседнем чатике кидали статистику по скачке пакетов с пакетного менеджера по языкам. Т.е сравнивали npm, gem и прочие. Судя по той картинке руби совсем не умер.
http://images.codefresh.io.s3.amazonaws.com/modulecounts.png
когда вам будут говорить что руби не нужон
Почему то все пытаются %language name% сравнить с js и сказать что он не нужен. Говорят когда то по Java такой же хайп был. Хотя по сути js сейчас - аномалия, и уляжется через некоторое время. Надеюсь webassembly с этим поможет.

ⰿⰰⰾⱏ
22.11.2016
07:45:54

Alexander
22.11.2016
07:46:11
кстати я тут ради интереса на sailsjs делал проект, еще год назад когда кричали что он прямо замена рельсы. Ох говна навернул. Недавно в соседнем чатике высказал свое мнение что мол не очень как-то экспериенс. На что получил ответ - это тогда он был говно, сейчас вообще огонь. А тогда что-то наоборот рассказывали...

Google

Alex
22.11.2016
07:46:13
Я кстати не знаю потому что перлом не пользовался.

Alexander
22.11.2016
07:46:18
вот как определить что не говно?

Alex
22.11.2016
07:46:35

Admin
ERROR: S client not available

Alex
22.11.2016
07:46:42
Java Ruby и прочие
Последовать за хайпом - тратить лишние деньги на "прогресс", имхо конечно.

I
22.11.2016
07:48:20
я слышал, что sails.js далек от применимости в трезвом состоянии
ну, то есть, без смузи не разобраться

Alexander
22.11.2016
07:49:34
по сути это хорошая идея, взять и начать загонять js фреймворк в жесткие рамки
+ генераторы и всякие идеи с рельсы
но там ребята пилят очень медленно
была надежда на Paypal
они выкатили с помпой свой фреймворк

Alex
22.11.2016
07:50:28
Не знаю зачем это загонять под рамки js. Если нужна трушная асинхронность я думаю Elixir/Phoenix быстрее допилят.
JS на мой взгляд как язык не очень удобный.

Alexander
22.11.2016
07:50:50
но все как-то сразу и закончилось
последние полгода там коммиты вида

Eugene
22.11.2016
07:52:31
Забили как эпл на time capsule

Vitaly
22.11.2016
07:52:41
только не JS
поднадоели Си подобные языки

Google

Alex
22.11.2016
07:53:26
JS и C это вообще разные языки.

Vitaly
22.11.2016
07:53:57
разные но сходства по синтаксису есть

Alex
22.11.2016
07:54:35
между C и JS?
скобочки?

Vitaly
22.11.2016
07:55:13
скобочки, точки с запятыми

I
22.11.2016
07:55:18
или clojure

Vitaly
22.11.2016
07:55:29
Ruby блин

I
22.11.2016
07:55:39
ну зачем руби-то сразу?)

Nick
22.11.2016
07:55:49
Пролог лучше

I
22.11.2016
07:56:01
согласен, но я не видел веб-фреймворков на нем
хотя я помню, как я раздуплился и всему потоку пролог прорешал за 2 вечера