Dmitry
Вроде с той то я кинул можно больше...
хз. я делал посты, ходил по аккаунтам лайкал, коменты писал подписывался, отписывался. Но вобщем все что надо есть. НУ и плюсиков у нее побольше :)
Anton
Повторяю - отменять полностью.
Anton
Конечно надо апишку юзать и у нас стоит - сначала пробовать api, а если нет токена или он проснулся - парсить.
Dmitry
но приложения то как то работают. думаю можно что то придумать будет
Anton
Только договариваться напрямую, но не уверен что они пойдут
Anton
И тогда только парсинг...
Dmitry
через сайт нельзя добавлять контент
Anton
Я не понимаю что ты хочешь мне сейчас доказкть.
Nik
но приложения то как то работают. думаю можно что то придумать будет
в нод жс чатике чувак реверсил закрытую часть апишки из официального аппа
Anton
Уже сейчас через api нельзя изменение данных сделать.
Anton
Вчера как раз смотрел и она все POST методы из документации убрали.
Dmitry
через либу которую я кидал можно :)
Anton
через либу которую я кидал можно :)
Теперь связываем два события - в официальном api закрыты все методы на изменёние данных и эта либа может и???
Anton
Понимаем что эта либа написана на парсинге! ЧТД
Алексей
Люди, вот такой вопрос: Нужно создать и записать в базу две связанных друг с другом модели. Как сделать так, чтобы если первая создалась и записалась, а вторая - нет, происходил откат? Использовать это?: https://laravel.com/docs/5.6/database#database-transactions
Nik
да
Алексей
да
Типа: DB::transaction(function () { $employee->save(); ... $systemUser->save(); <— тут облом }); И этого будет достаточно, чтобы employee удалился из базы?
Anton
Ну почти, но если у тебя там есть выходы из транзакции - то там надо не забывать \DB::rollback() делать.
Алексей
Спасибо, ребят.
Anton
Если у тебя эксепшен будет внутри замыкания - то вроде откатиться должно, а если просто ошибка какая - не забыть ролбэк делать.
Anton
И ещё - если у тебя вдруг в транзакции транзакция окажется - то это плохо.
Nik
https://laravel.com/docs/5.6/authorization#via-middleware господа, можно ли сделать can OR can ?
Anton
В том смысле что там сложнее с откатами будет.
Nik
м?)
Ivan
server { listen 80; listen [:😏:80; . . . root /var/www/html/quickstart/public; index index.php index.html index.htm index.nginx-debian.html; server_name example.com www.example.com; location / { try_files $uri $uri/ /index.php?$query_string; } . . . }
Nik
то-есть идти чайок заваривать? )
Volodymyr
Ребят кто какой стэк использует для разработки не большого интернет магазина до 2000 наименований. Используете ли админки готовые или пишите в ручную? Как потом оптимизируете по сео?
Nik
пэхапэ
Ivan
opencart или woocomerce
Volodymyr
opencart или woocomerce
Чат по ларе, соответственно и вопрос касается исключительно лары.
Volodymyr
пэхапэ
На чистом с 0 , а вы мазахист батенька))
Volodymyr
Никто не пилил е-коммерц проектов на ларке?
Ivan
я советую что лучше для ИМ, как по мне пилить велосипед на ларе дольше чем использовать готовое решение со стороны, но вам решать куда бюджет сливать
Дмитрий
Эм)) Знатаки, внимание вопрос 😆 битрик - ооп или нет?)
Дмитрий
Битрикс*
Nik
Битрикс говно
Ivan
нет
Дмитрий
Это понятно))
Volodymyr
Причем полное!
Дмитрий
😓
Дмитрий
нет
А почему, если кратко
Ivan
через функии работает
Дмитрий
Ну на сколько я помню он аля MVC был, через функции и апи, вдруг что поменялось)
Yet Another Stats (β)
https://b.yasb.exileed.com/t/laravel_pro
Vitaliy
ребята, обновляю данные в таблице user, и передаю данные во вюшку если передать Auth::user() то во вюшке я получаю данные до изменения, если же передам User::where('id', Auth::user()->id)->first() то получаю уже новые данные
Vitaliy
как этот момент поправить?
Ivan
для обновления модели используй Auth::user()->fresh() или Auth::user()->refresh()
Nikita
Почему все упорно пишут Model::where('id', $id)->first() вместо Model::find($id) ? Неужели все primary key меняют? Или запись find($id) чем то плоха
Anonymous
запрос то один и тот же
VA
cкорее на случай изменения первичного ключа. Мало ли, что кому в голову стукнет. Скажут, допустим, что мы создаем новый первичный ключ, ибо старый чем-то плох. А логика уже прописана. И везде бегай, ищи, где нужно поменять "find($id)" на "where('old_primary_key', $id)". Да и не нужно бегать в модель каждый раз, чтоб вспомнить, что у тебя первичным ключем выставлено. Либо просто от незнания о существовании метода find() ¯\_(ツ)_/¯
Nikita
запрос то один и тот же
но разве laravel это не про элегантность кода и чистоту :) я понимаю что запрос тот же
Victor
Потому что перед этим заюзали праивло валидации exist
Victor
поч?
Nikita
ну не всегда нужен феил если записи нет)
Victor
это не аргумент. почему не стоит юзать правило exist в валидации во всех остальных случаях?
Maksim
Т.е. ты предлагаешь в ХТТП слое валидацию делать чисто по формату данных, а остальную логику, типа проверки существования в хранилище и прочие, делать в сервисном слое?
Maksim
Не придется, там через квери билдер проверяется, достаточно только глобальный скоуп АР модели установить.
Victor
'exists:table,column,deleted_at,NULL'
Victor
😆
Nikita
😂
Victor
Я не топлю за exists ))
Maksim
Я сейчас валидирую данные, кидаю в ДТО, вызываю сервис и в него ДТО пробрасываю. Брат жив, всё ок, контроллеры тонкие стали, времени много не занимает это.
Maksim
Но на счет exist нужно ещё подумать, вроде всё логично, но Laravel это же в большинстве случаев для быстрой разработки, а не дрочения на слои.
Nikita
Как бы exists проверяет наличие/отсутствие записи в базе, почему вы хотите от него проверки soft delete?
Nik
а если эксплисит биндинг?
Nik
да, пардон
Maksim
https://laravel.com/docs/5.6/routing#implicit-binding
Maksim
Это слишком неявная хрень.
Maksim
Ну ты же сам понимаешь, что для бложиков это ок =)
Maksim
Пацаны до сих пор не могут понять, чем плохи фасады и как ПРОСТО И ЛЕГКО можно от них избавиться.
Nik
не вижу проблем на самом деле. порезанное на слои приложение даже с неявной хренью будет весьма понятно
Igor
Есть база данных с милионом фильмов, пользователю нужно показать новые фильмы. Получается что на каждый запрос надо будет сортировать бд? Это вроде как должно занимать мого времени. Как эта проблема решается?
Igor
можешь джобой подготовливать кэши
Получается что работа с большими бд сводится исключительно к кешам?