Обсуждение Прочее LaraClassified Доска объявлений на Laravel

ater123

Гуру форума
Регистрация
4 Сен 2015
Сообщения
100
Реакции
52
Ех, слишком высоко, не получиться пока разделить с вами обсуждение по скрипту

Обсуждение около-технических вопросов по доскам объявлений желательно вести в специальной теме в Мегафлуде.
 
большое спасибо! натолкнули меня на мысль.
Править нужно файл /app/Http/Controllers/HomeController.php
На 145-й строке изменил orderBy('population', 'DESC') на orderBy('name', 'ASC')

И тебе тоже спасибо! Может кому такая адаптация пригодится Вот только бы скриншот по качественнее бы. :ay:
Тоже применил в сайте твою адаптацию.
 
Последнее редактирование:
Косяки обнаружились.
1. При регистрации вводим Имя, но как я понял, это не login, а просто имя, что в корне не правильно. Уникальность должна проверяться именно на логин.
2. Тоже при регистрации - указываю номер телефона, но после регистрации в настройках профиля номер не отображается!
3. В профиле - не возможно выбрать Пол, а без пола не сохраняются настройки. это обязательное поле. Выпадающий список Select просто отсутствует.

Давайте пробовать решать.
 
Косяки обнаружились.
1. При регистрации вводим Имя, но как я понял, это не login, а просто имя, что в корне не правильно. Уникальность должна проверяться именно на логин.
2. Тоже при регистрации - указываю номер телефона, но после регистрации в настройках профиля номер не отображается!
3. В профиле - не возможно выбрать Пол, а без пола не сохраняются настройки. это обязательное поле. Выпадающий список Select просто отсутствует.

Косяк по теме что выше На 145-й строке изменил orderBy('population', 'DESC') на orderBy('name', 'ASC')
 
Косяки обнаружились.
1. При регистрации вводим Имя, но как я понял, это не login, а просто имя, что в корне не правильно. Уникальность должна проверяться именно на логин.
2. Тоже при регистрации - указываю номер телефона, но после регистрации в настройках профиля номер не отображается!
3. В профиле - не возможно выбрать Пол, а без пола не сохраняются настройки. это обязательное поле. Выпадающий список Select просто отсутствует.
если правишь шаблонизатор blade, то будь любезен контроллеры, включая БД везде править, вот как пример Для просмотра ссылки Войди или Зарегистрируйся
В доках всё описано что и как Для просмотра ссылки Войди или Зарегистрируйся
 
3. В профиле - не возможно выбрать Пол, а без пола не сохраняются настройки. это обязательное поле. Выпадающий список Select просто отсутствует.
По-тихоньку изучаю движок... Сам спросил - сам и отвечаю))

Чтобы отвязать "Пол" (сделать поле не обязательным) :
1. идём в файл app/Http/Requests/UserRequest.php на 202-ю строку.
2. убираем это условие: 'required'
3. должно остаться так: 'gender_id' => ['not_in:0'],


200 // Validation Rules
201 $rules = [
202 'gender_id' => ['required', 'not_in:0'],
203 'name' => ['required', 'max:100'],
204 'phone' => ['max:20'],


4. После этого изменения в профиле успешно сохраняются.
5. Соответственно в шаблоне в файле resources/views/account/edit.blade.php убираем или закомментируем кусок кода, отвечающий за вывод Пола. Кстати, там даже нет селекта (выпадающего списка) с выбором пола.
38f400e7b87b8d67f5eaf2038f03f81b-full.png


Кстати, введённый телефон в формате +7... автоматически преобразуется в формат 8...

Регулярка (маска) для телефона:
В футер ( resources/views/layouts/inc/footer.blade.php ) подключаем js-скрипты:
1. jquery - само собой
2. jquery.maskedinput - скрипт для маски под любой инпут
3. вызов скрипта, цепляем к инпуту с телефоном #phone


<script src="Для просмотра ссылки Войди или Зарегистрируйся"></script>
<script>
jQuery( document ).ready(function(jQuery){
jQuery("#phone").mask("8(999) 999-9999");
});
</script>

В итоге получаем инпут с регуляркой:

upload_2020-12-18_15-54-22.png

UPD =====================================
Подскажите, где перевести на русский эту фразу - days ago.
Screenshot-2.png


За её вывод отвечает переменная {{ $post->created_at_ta }} в файле resources/views/post/details.blade.php на 101-й строке.
Screenshot-1.png


Но ни в globals.php, ни в БД не нашёл эти данные для перевода.
В частности, слова 'ago' нет нигде в файлах с переводом.
 
Последнее редактирование:
Регулярка в имени при регистрации.
Для того, чтобы нельзя было вводить левые символы.
inline-код в html <input pattern='выражение'> - не сработал.

1. Идём в файл app/http/requests/userrequest.php
2. В 114-й строке добавляем саму регулярку:

113 $rules = [
114 'name' => ['regex:/^[a-zA-Zа-яА-Я0-9]+([-_]?[a-z0-9]+){0,4}$/i', 'required', new BetweenRule(4, 20)],


На правильность регулярки не претендую, она может быть какой угодно.
Главное сам смысл - как её вставить и куда.

=============================

Глюк с этой настройкой:
Общие настройки - Ads Single Page
0f150d796c662b106737a7e5c85981eb-full.png

Если в админке разрешено подавать объявление незарегистрированным пользователям и включена функция автоматической регистрации при подаче объявления, то наблюдается следующий косяк:
1. страница бесконечно грузится и дальше ничего не происходит,
2. но если остановить загрузку и перейти на главную, то объявление будет опубликовано.
Это версия 7.1.0.
 
Последнее редактирование:
UPD =====================================
Подскажите, где перевести на русский эту фразу - days ago.
Screenshot-2.png


За её вывод отвечает переменная {{ $post->created_at_ta }} в файле resources/views/post/details.blade.php на 101-й строке.

За ее вывод отвечает не переменная, а метод ago() объекта Carbon
// Convert the created_at date to Carbon object
Тут даже коммент от разработчиков движка есть
и следуя из этого $post->created_at->ago();
погуглите на тему "Вывод даты Carbon на русском"

UPD: в файле app/Helpers/Functions/core.php $locale = 'en_US'; я поменял на 'ru' ну и в .env соответственно сменить нужно APP_LOCALE=ru
 
Последнее редактирование:
UPD: в файле app/Helpers/Functions/core.php $locale = 'en_US'; я поменял на 'ru' ну и в .env соответственно сменить нужно APP_LOCALE=ru
а правильно поменял ru_RU ?? в дотенв там ещё и надо часовой пояс сминить да и не только в этом файле локаль и часовой пояс+бд прописать
 
в файле app/Helpers/Functions/core.php $locale = 'en_US'; я поменял на 'ru' ну и в .env соответственно сменить нужно APP_LOCALE=ru
Спасибо, en_US заменил на ru_RU - помогло.
в .env APP_LOCALE=ru уже было выставлено.

Спасибо за нормальный ответ! Не перевелись ещё адекватные люди на форумах :)
 
UPD: в файле app/Helpers/Functions/core.php $locale = 'en_US'; я поменял на 'ru' ну и в .env соответственно сменить нужно APP_LOCALE=ru
Не знаю почему у вас не сработало после первой установки, но у меня оно сразу работало без правки в app/Helpers/Functions/core.php $locale = 'en_US';
 
Назад
Сверху