Size: a a a

Чат по руби

2021 February 12

I

Integrity in Чат по руби
Но будем разбираться )
источник

P

Paul in Чат по руби
Integrity
Я вот заметил что не понятно не потому что сложно а потому что не понятно для чего нужно, в целом при изучении нового
ну да, много чего подвязано на внутреннюю логику приложения, плюс всё это надо бы вдумчиво переосмыслить. я показал это лишь для того, чтобы был виден конечный результат — классы таблиц, которыми легко манипулировать.
источник

I

Integrity in Чат по руби
Paul
ну да, много чего подвязано на внутреннюю логику приложения, плюс всё это надо бы вдумчиво переосмыслить. я показал это лишь для того, чтобы был виден конечный результат — классы таблиц, которыми легко манипулировать.
Я говорил не конкретно про ваш код а в ситуации в целом, скажем так я говорил про концепцию
источник

P

Paul in Чат по руби
Integrity
Я говорил не конкретно про ваш код а в ситуации в целом, скажем так я говорил про концепцию
лучше всего начать с ransak, посмотреть, какие задачи он решает, поискать его узкие места. тогда будет понятно, что можно было бы там улучшить
источник

R

Roux in Чат по руби
Paul
я долго рабтал с ransack в свое время, у меня это все билдилось отдельными классами
Тестирую, вот такой тут чудный индекс:
http://pastie.org/p/1Ch8ii2Hk2VU4XJ4WGyLSw

И как оно работает:
Когда ты переходишь на саму страничку, подгружает только первые 10.
Когда переходишь на следующую страницу по пагинации, оно также подгружает только следующие 10, НО потом происходит еще одно обращение к render json и уже подгружает вообще все.

Вот у меня стойкое ощущение того, что тут какая-то детская ошибка, которая триггерит это второе обращение, но которой я не улавливаю😅 Можете взглянуть пожалуйста?
источник

R

Roux in Чат по руби
В первых двух случаях запросы выглядят вот так:

AddressBook Load (0.9ms)  SELECT  "address_books".* FROM "address_books" WHERE "address_books"."user_id" = $1 ORDER BY created_at DESC LIMIT $2 OFFSET $3  [["user_id", 42], ["LIMIT", 10], ["OFFSET", 0]]
 ↳ app/views/contacts/index.html.erb:1


AddressBook Load (0.6ms)  SELECT  "address_books".* FROM "address_books" WHERE "address_books"."user_id" = $1 ORDER BY created_at DESC LIMIT $2 OFFSET $3  [["user_id", 42], ["LIMIT", 10], ["OFFSET", 10]]
 ↳ app/controllers/contacts_controller.rb:43
источник

R

Roux in Чат по руби
Но потом откуда-то берется вот этот, который все и портит:

AddressBook Load (0.4ms)  SELECT "address_books".* FROM "address_books" WHERE "address_books"."user_id" = $1  [["user_id", 42]]
 ↳ app/controllers/contacts_controller.rb:43
источник

R

Roux in Чат по руби
И я не могу понять что его триггерит😢
источник

R

Ro in Чат по руби
Roux
Но потом откуда-то берется вот этот, который все и портит:

AddressBook Load (0.4ms)  SELECT "address_books".* FROM "address_books" WHERE "address_books"."user_id" = $1  [["user_id", 42]]
 ↳ app/controllers/contacts_controller.rb:43
покажи файл, интересно что там на 43 строке
источник

R

Roux in Чат по руби
Ro
покажи файл, интересно что там на 43 строке
43 строка это 25 по ссылке выше) Могу вообще весь скинуть, если надо
источник

R

Roux in Чат по руби
То есть тут именно какая-то логическая ошибка из-за которой как только ты переходишь на любую страницу списка, триггерится два запроса.
Первый - нормальный, с лимитом и оффсетом.
А второй - тупо без них.
источник

КМ

Кеков Зез Мемович... in Чат по руби
Roux
Но потом откуда-то берется вот этот, который все и портит:

AddressBook Load (0.4ms)  SELECT "address_books".* FROM "address_books" WHERE "address_books"."user_id" = $1  [["user_id", 42]]
 ↳ app/controllers/contacts_controller.rb:43
all_lists = current_user.address_books
источник

R

Roux in Чат по руби
Кеков Зез Мемович
all_lists = current_user.address_books
😅😅😅
Cпасибо большое)
Самое забавное, я закомментировал его и при этом ничего не сломалось. Какой тогда смысл в нем вообще?😅
источник

КМ

Кеков Зез Мемович... in Чат по руби
Roux
😅😅😅
Cпасибо большое)
Самое забавное, я закомментировал его и при этом ничего не сломалось. Какой тогда смысл в нем вообще?😅
Он у тебя вызывается только в случае если ты запрашиваешь json
источник

КМ

Кеков Зез Мемович... in Чат по руби
28 строка по твоей ссылке
источник

R

Roux in Чат по руби
Кеков Зез Мемович
Он у тебя вызывается только в случае если ты запрашиваешь json
В том же и прикол, я оттуда убрал, рендер без него никак не сломался, все работает как должно.
Потому и не понимаю каково вообще его предназначение
источник

КМ

Кеков Зез Мемович... in Чат по руби
Так ты вызови свою страницу с расширением .json
Раньше бы тебе выдалась всех адресбуков, сейчас не будет
источник

R

Roux in Чат по руби
Агаааа, вижу
источник

R

Roux in Чат по руби
Спасибо большое, чатик)
источник

P

Paul in Чат по руби
надо зарефакторить
источник