@rubyschool

Страница 283 из 921
Fedor
03.08.2017
15:57:31
ну в том то и суть, что во вьюхе написано <span>t(.interesting_text)</span>

а в ямлах - непосредственно текст

а через вебморду правятся ямлы

и текст меняется

Google
Ilya
03.08.2017
15:58:27
Да, с этим уже разобрался

не так понял сразу

Fedor
03.08.2017
15:58:43
единственное, что я могу предложить это подумать на архитектурой БД, в плане описаний

тоесть иметь товар у которого 100 полей title под каждую локаль как-то криво

я бы сделал табличку с параметрами товара, id, цены и.т.д.

и под каждую локаль табличку ru_describes

и там бы хранил все описания, названия и.т.д.

и связка через join

Nikolai
03.08.2017
15:59:51
У меня мысль - сделать по таблице под каждую локаль

Fedor
03.08.2017
15:59:56
но это так сходу в голову пришло, можно еще подумать

может получше решение есть

Nikolai
03.08.2017
16:00:03
Оно так и шустрее работать будет

Fedor
03.08.2017
16:00:14
ага, и шустрее и удобнее гораздо

Google
Nikolai
03.08.2017
16:00:21
И основная таблица не будет выглядеть монструозно

Fedor
03.08.2017
16:00:24
надо добавить локаль - добавил табличку и все

Serge
03.08.2017
16:45:55
Ага. А потом мапить сутками?

Nikolai
03.08.2017
16:49:29
Сергей, Ваши предложения?

Fedor
03.08.2017
16:54:39
Ага. А потом мапить сутками?
Достаточно не тащить без пагинации все товары на всех языках одновременно

v
03.08.2017
17:48:55
господа хорошие, а подскажите, что модные рубисты используют для реализации календаря событий? типа вот эдакой штуки https://github.com/excid3/simple_calendar

или может что попроще и попрямее есть?

Ro
03.08.2017
18:11:38
Доброго времени суток всем, такой вопрос: Есть интернет магазин, сейчас нужно сделать интернализацию. Чтобы менялись названия\описания продуктов и элементы меню, и чтобы переводы из админки контролировать можно. Я так понимаю тут уже локали не помогут, в базу все писать придется? Или есть какой-то элегантный способ?
просится полиморфная ассоциация Translatable. Суть в том, что каждый нужный объект (товар, категория и т.д.) становится "переводимым". Как это дальше делать - хороший вопрос. Но вот это первое, что пришло в голову. Хоть я и не большой фанат полиморфных ассоциаций.

Ilya
03.08.2017
18:12:30
Как вообще интернет магазины решают такую проблему? ? А то чето пока не сильно много вариантов

Vlad
03.08.2017
18:14:53
Если кому там еще актуально про globalize - вполне годная штука, даже завелась с 5 рельсами, и с небольшими пинками заработали гемы 'rails_admin_globalize_field' и 'globalize-accessors', чтобы не придумывать свои велосипеды.

Во вьюхах не надо мучаться со всякими If locale, что вы тут понаписывали в чате, просто пишем model.name, а globalize-accessors подхватывает атрбиуты и переводит все. Все данные переводов хранятся, кажется, в отдельной таблице. На быстродействие не особо проверялось, на небольшом трафике и самом дешевом серваке проблем замечено не было.

Ro
03.08.2017
18:20:11
Как вообще интернет магазины решают такую проблему? ? А то чето пока не сильно много вариантов
да хз. Я бы старался особо не усложнять. Держать в БД то, что динамическое (title, description) и т.д. Кстати, может есть даже смысл сериализовать переводы в yaml формат. Типа если title не yaml, то выдавать его напрямую. А если yaml, то выдавать на основе текущей локали пользователя. Конечно если апп большой, то надо будет везде поменять этот вызов на что-то вроде item.t_title вместо item.title. Ну это пока первая мысль как сделать просто. В админке переводы могут вставлять прямо в textarea - не надо делать дофига полей. Прикрутить тока какой-нить клиентский верификатор yaml'a.

Ilya
03.08.2017
18:21:44
звучит круто, пойду курить доки

Во вьюхах не надо мучаться со всякими If locale, что вы тут понаписывали в чате, просто пишем model.name, а globalize-accessors подхватывает атрбиуты и переводит все. Все данные переводов хранятся, кажется, в отдельной таблице. На быстродействие не особо проверялось, на небольшом трафике и самом дешевом серваке проблем замечено не было.

Ro
03.08.2017
18:22:10
можно заюзать вот этот мой плагин чтобы textarea сама увеличивалась в размерах https://github.com/ro31337/jquery.ns-autogrow В textarea будет yaml формат, например.

тогда и полиморфную ассоциацию не надо, в БД ведь не будет лишних полей. Только модуль сделать. Хотя хз, может кто-то скажет что этот подход отстой - я бы хотел услышать аргументы)

наверное поиск будет плохо делать. А может быть наоборот хорошо

Fedor
03.08.2017
18:26:11
Я бы не смешивал переводы, что бы не разрастались таблицы

Ro
03.08.2017
18:26:19
я думаю даже можно обойтись без item.t_title - просто написать модуль, который все атрибуты будет оборачивать. И если item.title это yaml, то он будет выдавать нужный перевод

Google
Fedor
03.08.2017
18:26:36
Тоесть что бы один запрос с одним переаодом не весил в пять раз больше чем надо

Ro
03.08.2017
18:27:54
тоже верно, хотя обычно перевод это не так много инфы. Если доп.язык один, то можно. А если 10, то наверное этот подход уже не годится

Nikolai
03.08.2017
18:33:31
звучит круто, пойду курить доки
в moscow.rb порекомендовали гем globalize

господа

? Привет. Я – @SpamKillerRobot. Я очищаю чаты от спама (когда 3 пользователя пожалуются на сообщение). Добавь меня в группу и сделай администратором. Для жалобы на сообщение - необходимо ответить на него (Reply) словом «спам». ? Откройте мое инфо, нажмите «Добавить в группу»

spartakusQ
03.08.2017
18:34:55
а вот это не надо делать

я про админку боту

Nikolai
03.08.2017
18:35:20
на усмотрение модераторов

bender23
03.08.2017
18:36:35
ничего страшного боты с админкой не делают

Ro
03.08.2017
18:37:22
не, этого бота я модером не буду делать, только если он будет хоститься на нашем серваке. Если найдешь сорц - скинь в личку

Andrey
03.08.2017
19:00:08
Я не бот. Только начал изучать Ruby

Ilya
03.08.2017
19:01:10
все-таки работает ?

Admin
ERROR: S client not available

nafan
03.08.2017
19:01:17
Ура, привет!

Vladimir
03.08.2017
19:03:09
@nklsv допиши в приветствии Бота адрес школы (гиперссылку)

Nikolai
03.08.2017
19:12:43
ну что, ребята. теперь будем устраивать охоту на спамеров с их каналами о пассивном доходе

:﷼
03.08.2017
19:22:10
Надо не кикать спамеров, а банить каналы. После спама пусть бот сообщение постит, чтобы открывали спамерский канал и репортили о спаме. Всего 8 жалоб и канал заблочат.

Nikolai
03.08.2017
19:22:32
хм

но все каналы мы не перебаним

создать канал это раз плюнуть же

Google
Nikolai
03.08.2017
19:23:35
ну хотя. для канала важна аудитория. после каждого бана придётся набирать её заново

так что предложение вполне логично и разумно

:﷼
03.08.2017
19:23:47
Точняк

Nikolai
03.08.2017
19:24:33
в общем, предложение для всех присутствующих. как только появляется спам с рекламой говноканалов - заходим и массово репортим

пора нанести ответный удар

:﷼
03.08.2017
19:25:37
Бота научи, пусть он после ссылок пост выставляет

Dmitry
03.08.2017
19:31:41
Переходить по ссылке которая ведёт в рекламируемый канал, нажимаешь три точки в правом верхнем меню, там есть пункт "Report", там выбираешь "Spam", все!

Vadim
03.08.2017
19:32:26
Спасибо!

Nikolai
03.08.2017
19:47:07
скажите

а что в ruby делает метод со знаком равно?

например, такое

def all_tags=(names) self.tags = names.split(",").map do |name| Tag.where(name: name.strip).first_or_create! end end

:﷼
03.08.2017
19:50:00
Присваивает значение

Nikolai
03.08.2017
19:51:12
не совсем понял

мы же значение обычно так присваиваем

Страница 283 из 921