These are chat archives for LaravelRUS/chat

6th
Aug 2015
Andrew Zhuravchak
@Retsediv
Aug 06 2015 05:44
Здравствуйте.
При команде vagrant up загрузка доходит до места
default: SSH auth method: private key
а дальше..
default: Warning: Connection timeout. Retrying...
Ключи делал так, как на в доках написано, пути проверил, они точно правильные и по разному пробовал их записать. В чем проблема может быть?
Andrew Zhuravchak
@Retsediv
Aug 06 2015 07:38
@xsen уже читал, пробовал, не помогло
Евгений Лещенко
@xsen
Aug 06 2015 07:39
@Retsediv там похожих вопросов еще полно, тут тебе точнее вряд ли скажут, пробуй все :) проблема явно не в homestead, виноват vagrant или vmbox
Andrew Zhuravchak
@Retsediv
Aug 06 2015 07:41
@xsen да, понимаю что не в homestead проблема, просто уже 3 дня бьюсь над етим и никак не могу все правильно установить
Soprun Vladislav
@vlsoprun
Aug 06 2015 07:42
Всем доброго времени суток и продуктивного рабочего дня ))
NelinD
@NelinD
Aug 06 2015 07:43
https://github.com/rcaferati/brackets-cssfier
Кто-нибудь видел такую штуку под шторм?
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 07:45
@NelinD прикольно)
Soprun Vladislav
@vlsoprun
Aug 06 2015 07:46
@NelinD крутая штука ))
Евгений Лещенко
@xsen
Aug 06 2015 08:06
Нужна помощь экспертов :) Скоро буду писать вторую версию продукта, что-то вроде файлового хранилища для разных клиентов, у каждого клиента своя реализация. Так вот в прошлой версии намучался с обновлением функционала, у каждого из них свои загоны и нужные фишки. Все это было на kohana, кое как я обновлял общую кодовую базу, остальные нужные им фишки через модули. В новой версии хочу упростить себе жизнь. Есть у кого идеи как просто сделать обновление разного функционала для разных клиентов?
Maxim
@Big-Shark
Aug 06 2015 08:07
@xsen композер модули?
Евгений Лещенко
@xsen
Aug 06 2015 08:07
@Big-Shark коммерческая разработка, поднимать свой packagist.org?
Maxim
@Big-Shark
Aug 06 2015 08:08
@xsen почему нет)
@xsen кстати можно пакеты ставить и из просто закрытых репозиториев)
Евгений Лещенко
@xsen
Aug 06 2015 08:13
@Big-Shark ну с доставкой пакетов можно и composer'ом обойтись. Еще интересно мнение по поводу архитектуры самого приложения. Каждую инмплементацию CRUD(controller, model, views) вынести в отдельный пакет, можно, у меня на староый верии примерно так и есть, но если 4 клиента и у каждого своя имплементация, а все остальное разное, для того что бы внести одну правку надо править 4 пакета. Есть идеи как упростить? Я думал про какую нибудь систему хуков как у руби, но целой картины в голове так и не сложилось
писал пару простых плагинов для redmine, там через хуки работало переопределение
Maxim
@Big-Shark
Aug 06 2015 08:15
@xsen я не совсем понимаю как может быть общяя система, но тем не менее разная?
Andrew Zhuravchak
@Retsediv
Aug 06 2015 08:15
В доках указано, что если исспользуется винда, то для homestead необходима виртуализация. В других осях без нее можно обойтись? Просто у меня она отсутствует и я так полагаю, что из-за нее не хочет вагрант работать...
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 08:17
кто знает как красиво из ассоциативного массива [key=>value,...]сделать массив массивов [[key, value],...]?
Evgeniy
@Ruzarh
Aug 06 2015 08:18
array_merge(array_keys($arr), array_values($arr))
Евгений Лещенко
@xsen
Aug 06 2015 08:19

@Big-Shark пример: хранилище, есть там всякие каталоги, загрузка фйлов, конвертация видео, все у всех одинаково, но клиент 1 хочет что бы при просмотре файла был набор полей и функций один, клиент 2 другой. Пример абстрактный, попросить могут все что угодно)

Допустим я вынес им на разные пакеты просмотр файлов, а через месяц выпустил новую фичу, что в просмотре файла можно делать шаринг в соцести, придется вносить одни изменения в разные пакеты.

Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 08:19
@Ruzarh это же не то будет
Евгений Лещенко
@xsen
Aug 06 2015 08:24
@Big-Shark я вот и думал, что в каждом пакете оставлять hook который бы умел брать функциональность из других пакетов. Сложно короче все, буду дальше думать)
Maxim
@Big-Shark
Aug 06 2015 08:25
@xsen
if($client === 1)
{
 echo 'new input';
}
@xsen думаю самый оптимальный варинт)
Евгений Лещенко
@xsen
Aug 06 2015 08:26
@Big-Shark хыы) рыешение в лоб, зато простое, приму к сведению, спасибо
Maxim
@Big-Shark
Aug 06 2015 08:27
@xsen я делал похожею штуку, и это было оптимальнм решением, а потом можно было придти и сказать, слушай, у нас тут идея, давай добавим вот такое поле, все соглашаются, и ты просто удаляешь иф)
Andrey Fedotov
@protectedfor
Aug 06 2015 08:38
Всем привет! Подскажите как лучше реализовать функцию переключения региона. Например юзер выбирает "Россия" и все объявления отфильтровываются по этой стране. В каком виде лучше хранить информацию в адресной строке? Как параметр?
Maxim
@Big-Shark
Aug 06 2015 08:39
@protectedfor есть только результат запроса меняется, то можно как гет параметр, если страница меняется, то лучше как сегмент урла
Andrey Fedotov
@protectedfor
Aug 06 2015 08:41
ок. Еще такой вопрос. Как объединить несколько моделей, чтобы потом одним foreach вывести все записи?
Maxim
@Big-Shark
Aug 06 2015 08:44
@protectedfor у колекций есть мердж
Роман Сохарев
@greabock
Aug 06 2015 09:04
Maxim
@Big-Shark
Aug 06 2015 09:04
))))
Soprun Vladislav
@vlsoprun
Aug 06 2015 09:04
))
NelinD
@NelinD
Aug 06 2015 09:19
@greabock от ты разошелся)
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 09:33

еще раз, мб новые подтянулись в чат)

кто знает как красиво из ассоциативного массива [key=>value,...]сделать массив массивов [[key, value],...]?

Oleg
@Malezha
Aug 06 2015 09:36
@Ellrion array_filter с флагом ARRAY_FILTER_USE_BOTH
$array = array_filter($array, function($value, $key) {
    return [$key, $value];
}, ARRAY_FILTER_USE_BOTH);
Evgeniy
@Ruzarh
Aug 06 2015 09:39
ARRAY_FILTER_USE_BOTH используется в array_filter() для передачи и значения и ключа в заданную функцию. Добавлено в PHP 5.6.0.

@Malezha Спасибо, не знал )
@Ellrion можно и дедовским способом, если просто нужен результат, а не только эстетика.

$ret = [];
foreach ( range(1, 50) as $k => $v ) {
    $ret[] = [$k, $v];
}

Прям начинаю замечать, что начинается движение «Программирование для эстетики» и пропадает «Программирование на результат» ((

Maxim
@Big-Shark
Aug 06 2015 09:43
@Ellrion так тебе же вроде дали вариант?
@Ellrion а на будущее, хорошо бы сразу ссылку на http://3v4l.org/ с входными данными, и примером выходных данных
Роман Сохарев
@greabock
Aug 06 2015 09:45
@Big-Shark там можно как-то отключить проверку "не нужных" версий и оставить только 5.5, допустим?

@Ruzarh

Прям начинаю замечать, что начинается движение «Программирование для эстетики» и пропадает «Программирование на результат» ((

только что отписывался в скайпе по этому поводу. Это самое "на результат" приводит к контроллерам 2к+ строк. В которых ты на следующей неделе сам не разберешься

Maxim
@Big-Shark
Aug 06 2015 09:48
@greabock не встречал такого. но насколько я знаю есть аналоги где ты сам выбираешь версию на которой будет запускаться скрипт.
Роман Сохарев
@greabock
Aug 06 2015 09:49
@Big-Shark ну просто долго результат выводит...
nnnikolay
@nnnikolay
Aug 06 2015 09:49
sandbox.onlinephpfunctions.com
Maxim
@Big-Shark
Aug 06 2015 09:49
@greabock да, есть такое
Роман Сохарев
@greabock
Aug 06 2015 09:49
@Ruzarh забыл добавить смайлик :smile: а то вышло, как будто я тебя в чем-то обвиняю =))
Evgeniy
@Ruzarh
Aug 06 2015 09:50
@greabock я вообще приверженец того, что foreach вообще не место в контроллерах. Но ведь согласись что задача очень проста. И даже не заслуживает траты на нее и 2х минут.
Роман Сохарев
@greabock
Aug 06 2015 09:53
@Ruzarh не только foreach, а вообще всем лупам. Гнать их из контроллера! =)
Илья.
@IlyaVorozhbit
Aug 06 2015 09:53

Ребят, всем привет. Как можно создать экземпляр контроллера в route'сах?
alt

Вот в этом месте, с указанием 2х параметров. Нагуглить не могу, доки тоже курил

Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 09:54
всем спс за ответы. @Ruzarh ну дедовский тут понятно) @Big-Shark тот вариант который давали он ниразу неработает как надо, я сразу об этом и отписал. @Malezha да такой вариант тоже придумался, да только еще надо сверху навернуть array_values.
Роман Сохарев
@greabock
Aug 06 2015 09:54
@IlyaVorozhbit давай начнем с того, зачем =)
Илья.
@IlyaVorozhbit
Aug 06 2015 09:55
@greabock я не нашел другого метода, для создания рекурсивных категорий
@greabock т.е., к примеру, url категории нужной может быть: host/market/scluvg/g/gdfg/5646/45trgfh
Мне нужно забрать 2 последних, передать их в контроллер с экшеном
Роман Сохарев
@greabock
Aug 06 2015 09:55
@IlyaVorozhbit если у тебя слаг уникальный, так просто забей, и отдавай по последнему сегменту =)
Илья.
@IlyaVorozhbit
Aug 06 2015 09:57
@greabock ну, у меня название каждой категории уникальное (алиас, вернее)

Хорошо, понял.
Что-то вроде:

Route::get('{slug}', 'Market\MarketController@getCategoryIndex')->where('slug','([a-z0-9-/]+)');

Роман Сохарев
@greabock
Aug 06 2015 09:59
@IlyaVorozhbit но если тебе прям "жмет", то поможет:
$arguments  =  func_get_args();
$method = 'index';
$controller = app(MyController::class);
return app()->call([$controller, $method], arguments);
Илья.
@IlyaVorozhbit
Aug 06 2015 10:00
@greabock благодарю, бро
Qweqwe1234
@Qweqwe1234
Aug 06 2015 10:01
Ребят, подскажите пожалуйста, как получить возможные значения поля таблицы с типом enum, указанные при создании в файле миграции?
Роман Сохарев
@greabock
Aug 06 2015 10:03
@Qweqwe1234
function getEnumValues($table, $column)
{
  $type = DB::select( DB::raw("SHOW COLUMNS FROM $table WHERE Field = '$column'") )[0]->Type;
  preg_match('/^enum\((.*)\)$/', $type, $matches);
  $enum = array();
  foreach( explode(',', $matches[1]) as $value )
  {
    $v = trim( $value, "'" );
    $enum = array_add($enum, $v, $v);
  }
  return $enum;
}
это тот самый момент, когда ты понимаешь, почему enum зло, и допустимые значения должны хранится в отдельной таблице
Qweqwe1234
@Qweqwe1234
Aug 06 2015 10:06
Благодарю, а более простого решения нет? В данном случаи думаю проще будет самому вручную перечислить. Хотел при создании объекта в форме в select указать возможные варианты, так как новые добавляться не планируются
Действительно зло...
Maxim
@Big-Shark
Aug 06 2015 10:06
@greabock да ладно, все не так уж страшно
Роман Сохарев
@greabock
Aug 06 2015 10:07
@Big-Shark да уж лучше в конфиг положить
Maxim
@Big-Shark
Aug 06 2015 10:07
@greabock ну для каждого значения лучше еще константу держать
Роман Сохарев
@greabock
Aug 06 2015 10:08
тоже себе вариант
Maxim
@Big-Shark
Aug 06 2015 10:09
@greabock не очень понял тебя, это типа "так себе вариант" или "нормальный вариант"?
Qweqwe1234
@Qweqwe1234
Aug 06 2015 10:09
@Big-Shark Над этим же задумываюсь, только куда ее глобально можно поместить что бы в случаи необходимости была доступна из любой вьюшки/контроллера
Роман Сохарев
@greabock
Aug 06 2015 10:09
@Big-Shark ну типа "тоже вполне себе вариант" =)
Paul Klementyev
@klermonte
Aug 06 2015 10:09
@Qweqwe1234 как статический метод класса например, который возвращает массив этих значений
Maxim
@Big-Shark
Aug 06 2015 10:10
@Qweqwe1234 в модель к которой это относится
Роман Сохарев
@greabock
Aug 06 2015 10:10
@Qweqwe1234 используй провайдеры, люк =))
Maxim
@Big-Shark
Aug 06 2015 10:10
@greabock я обычно делаю констунты, и массив с этими константами
Роман Сохарев
@greabock
Aug 06 2015 10:10
хотя да, @Big-Shark прав
Qweqwe1234
@Qweqwe1234
Aug 06 2015 10:10
Благодарю, об этом я и не подумал. С провайдерами пока не сталкивался, недавно за изучение Laravel да и за web сел
Роман Сохарев
@greabock
Aug 06 2015 10:16

@Qweqwe1234

#...
class Role extends Model 
{
      ADMIN = 'administrator';
      USER = 'regular_user';

      public static $variants = [ADMIN, USER];

      #....
}
@foreach(App\Role::$variants as $variant)
        <option value="{{ $variant }}">{{ $variant }}</option>
@endforeach

как-то так что ли

Maxim
@Big-Shark
Aug 06 2015 10:17
@greabock только надо не просто ADMIN USER, а чтото типа TYPE_ADMIN TYPE_USER, так как таких штук может быть несколько в модели, и иначе будет путаница
Роман Сохарев
@greabock
Aug 06 2015 10:17
это понятно
Qweqwe1234
@Qweqwe1234
Aug 06 2015 10:18
Еще раз спасибо, суть понял, пойду изобретать) У меня все проще, в enum перечислены просто возможные категории(Вопрос/Ответ)
Роман Сохарев
@greabock
Aug 06 2015 10:19
да ну ёмаё
это же бинарщина
какие нафиг енумы =)
Qweqwe1234
@Qweqwe1234
Aug 06 2015 10:20
Ну это если в общих чертах, там не 2 варианта к сожалению будет

а если сделать

public static $variants = ['Админ', 'Юзер'];

или лучше все же отдельно их вынести?

Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 10:24
Есть неплохие реализации enum классов на пыхе
https://github.com/myclabs/php-enum
вот например
Qweqwe1234
@Qweqwe1234
Aug 06 2015 10:26
@Ellrion Спасибо, но опять же не вижу смысла внедрять, так как используется всего 1-2 раза и объявления статическим массивом на мой взгляд более чем достаточно
Maxim
@Big-Shark
Aug 06 2015 10:39
@Qweqwe1234 не, так нельзя, надо константы
Ekuzkamaza
@Ekuzkamaza
Aug 06 2015 10:42
@greabock в селекте вместо select( DB::raw(, можно сразу ->selectRaw( писать,
Andrey Fedotov
@protectedfor
Aug 06 2015 11:23
Кто поможет разобраться? В общем использую пакет "stolz/assets": "^0.1.2", котрый управляет asset'ами. В конфигах поставил 'pipeline' => true (минификация css и js), после обновления страницы вылазиет ошибка: mkdir(): Permission denied. Сижу под Ubuntu 14.10, Apache 2.4. У всех файлов и папок проекта рекурсивно выставлены права 777, владельцем являюсь я (protectedfor), группа называется так же - protectedfor. У друга никаких ошибок не возникает, папка без проблем создается и туда записываются заминифицированные css и js. Подозреваю проблема в правах доступа. Пробовал менять владельца на www-data - никаких результатов это не дало.
Paul Klementyev
@klermonte
Aug 06 2015 11:43
@protectedfor в public точно 777 у всего? и у самомого public в том числе?
bearn666
@bearn666
Aug 06 2015 11:47
Привет люди, подскажите почему не работает редирект
 public function store($q, $a=null)
    {
        $question = Questions::create($q);
        $insertedId = $question->id;

        if(isset($a)){
            foreach($a as $answer_text){
                $answer = ['question_id'=>$insertedId,'text'=>$answer_text];
                Answers::create($answer);
            }
        }
        return Redirect::back();
    }
Nikita8877
@Nikita8877
Aug 06 2015 11:47
This message was deleted
This message was deleted
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 11:48
@bearn666 что именно неработает?
bearn666
@bearn666
Aug 06 2015 11:50
@Ellrion меня не возвращает на форму с которой я пришел
Soprun Vladislav
@vlsoprun
Aug 06 2015 11:50
@bearn666 а что происходит?
bearn666
@bearn666
Aug 06 2015 11:50
после выполнения метода я остаюсь на том же роуте
Soprun Vladislav
@vlsoprun
Aug 06 2015 11:51

@bearn666 попробуй сделать так:

public function store($q, $a=null)
{
    return Redirect::back();
}

и посмотри что будет

bearn666
@bearn666
Aug 06 2015 11:52
@vlsoprun тоже самое
Soprun Vladislav
@vlsoprun
Aug 06 2015 11:52
@bearn666 ок...
@bearn666 а если
return 'Ok!';
krashcool0537
@krashcool0537
Aug 06 2015 11:53
Ребятки, всем привет. Я с очень простым вопросом, но никак не могу найти ответ
if (DB::table('performer_resource_service')->insert($insert_array)) {
$res_ins = 'удача';
}
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 11:53
@bearn666
public function store($q, $a=null)
{
    dd(URL::previous());
}
krashcool0537
@krashcool0537
Aug 06 2015 11:53
код в случае ошибки все равно дает ошибку, else Не отрабатывает
bearn666
@bearn666
Aug 06 2015 11:54
@vlsoprun тоже ничего ...
Soprun Vladislav
@vlsoprun
Aug 06 2015 11:54
@bearn666 Проверь роутер... 100% должен быть ответ
return 'Ok!';
bearn666
@bearn666
Aug 06 2015 11:54
@Ellrion вернуло "http://localhost:8000/"
User195
@User195
Aug 06 2015 11:55
This message was deleted
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 11:56
@bearn666 там твоя форма?
bearn666
@bearn666
Aug 06 2015 11:56
@Ellrion да
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 11:57
и туда не перебрасывает?
bearn666
@bearn666
Aug 06 2015 11:57
@Ellrion нет
Soprun Vladislav
@vlsoprun
Aug 06 2015 11:57
@bearn666 crf / FormRequest ?!
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 11:57
во во. у тебя 500 мб?
или 403
User195
@User195
Aug 06 2015 11:58
This message was deleted
bearn666
@bearn666
Aug 06 2015 11:58
блин, всем спасибо я разобрался!
Soprun Vladislav
@vlsoprun
Aug 06 2015 11:58
@bearn666 :)
bearn666
@bearn666
Aug 06 2015 11:59
@vlsoprun , @Ellrion - Спасибо!
я просто натупил

в роуте

Route::post('/question','QuestionsController@add');

вызваю этот метод а уже в нем

public function store

а return не прописал в методе "add"

User195
@User195
Aug 06 2015 12:02
Подскажите, какую структру связей стоит использовать если есть три таблицы Users, Orders, Comments. Нужно чтобы user мог добавлть order, и так же мог добавлять comment к любому order'у
Я думаю так:
Table USERS:
id: primary key

Table ORDERS:
id: primary key
user_id: foreign key to USERS table

Table COMMENTS:
id: primary key
user_id: foreign key to USERS table
comment_id: foreign key to COMMENTS table
Paul Klementyev
@klermonte
Aug 06 2015 12:04
@User195 не забудь привязать комменты к чему-то
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 12:06
@User195 норм, только забыл связь комента с ордером
User195
@User195
Aug 06 2015 12:07
@Ellrion comment_id: foreign key to COMMENTS table ?
разве это не привязка
Paul Klementyev
@klermonte
Aug 06 2015 12:07
@User195 это ты древовидную структуру комментов замутил
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 12:07
@User195 это же комент с коментом
User195
@User195
Aug 06 2015 12:16

то есть так ?

Table USERS:
id: primary key

Table ORDERS:
id: primary key
user_id: foreign key to USERS table

Table COMMENTS:
id: primary key
user_id: foreign key to USERS table
order_id: foreign key to ORDERS table

Значить для класса Comment нужны два метода belongTo User и Order ?

Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 12:18
врядли потребуется идти от комента к Ордеру. т.е. сам метод релейшена можно добавить но использоваться чаще(читай всегда) будет метод релейшена в ордере
User195
@User195
Aug 06 2015 12:21
@Ellrion Если мне нужно достать все комметы Order'a. то есть для этого достаточно в ORder hasMany Comment, а в Comment belongTo уже указывать не нужно?
Paul Klementyev
@klermonte
Aug 06 2015 12:22
@User195 именно
User195
@User195
Aug 06 2015 12:22
спасибо
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 12:22
@User195 необязательно
Роман Сохарев
@greabock
Aug 06 2015 12:28
А я всегда оформляю связи с двух сторон - ибо ожидаемое поведение
User195
@User195
Aug 06 2015 12:30
@greabock например, какое поведение?
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 12:34
@greabock дело вкуса
@User195 он о том, что связь между сущностями она всегда двусторонняя.
bearn666
@bearn666
Aug 06 2015 13:18
Народ подскажите, есть ли возможность отследить в реальном времени изменения в базе данных (вариант ajax запроса в цыкле раз в секунду не предлагайте=) )
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 13:21
@bearn666 так тебе отследить изменения нужно или уведомить об этом клиент?
bearn666
@bearn666
Aug 06 2015 13:22
@Ellrion ну скорее клиента. Есть страница на которой отображаются данные с бд, и вот как их обновлять в реальном времени? (не используя ajax )
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 13:22
просто как бы это две задачи. первая решается просто если все изменения в базе делает только твое приложение и тебе достаточно этого. второе решается например через посылку сообщения через вебсок
bearn666
@bearn666
Aug 06 2015 13:23
@Ellrion ну вот мне второе нужно
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 13:25
ну например http://laravel.com/docs/5.1/events#broadcasting-events вот недавно был ливстрим кодинга от участника сообщества https://www.youtube.com/watch?v=Rc9kr6wXIYE&feature=youtu.be
bearn666
@bearn666
Aug 06 2015 13:27
@Ellrion спасибо буду изучать
Evgeniy
@Ruzarh
Aug 06 2015 13:34
А кто занимался версионированием продукта на php ?
Не путать с системой контроля версий )
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 13:35
@Ruzarh а что с ним?
семантик версионирование и все.
User195
@User195
Aug 06 2015 13:38
Можно как-нибудь создать оъект одной стокой использую дополнительные значения помимо $request->all() . Сейчас делаю так:
public function store(Request $request, $id) {
        $data = $request->all();
        $data['order_id'] = $id;
        \Auth::user()->comments()->create($data);
        return \Redirect::route('orders.show', ['orders' => $id]);
    }
Evgeniy
@Ruzarh
Aug 06 2015 13:39
@Ellrion это каждый раз надо ручками все прописывать. А может есть какой то удобный инструмент.
JhaoDa
@jhaoda
Aug 06 2015 14:06
@Ellrion на будущее: здесь принято ссылки на видосики заворачивать в код
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 14:10
@jhaoda очень забавно ты написал. не "заворачивай" или "лучше бы ты видео завернул" а "здесь принято", типо ты такой старожил сообщества а я ньюфаг только вылупился)
Роман Сохарев
@greabock
Aug 06 2015 14:12
да пофиг, кто там старожил, кто ньюфаг... ссылки заворачивайте =)
ну оно прям на полэкрана же блин
Maksim (Ellrion) Platonov
@Ellrion
Aug 06 2015 14:13
ну уже сори не дает он старый комент править. но там есть метод свернуть. он только мне свернул?
JhaoDa
@jhaoda
Aug 06 2015 14:15
@Ellrion да. Я нажму — мне свернёт. Вася нажмет — ему свернёт.
User195
@User195
Aug 06 2015 15:26
как в обратном порядке выводить значения foreach ?
Maxim
@Big-Shark
Aug 06 2015 15:26
фор?
nnnikolay
@nnnikolay
Aug 06 2015 15:26
hcaerof
Maxim
@Big-Shark
Aug 06 2015 15:27
вайл? до вайл?
JhaoDa
@jhaoda
Aug 06 2015 15:27
@User195 никак. Если только сначала реверснуть массив/коллекцию.
User195
@User195
Aug 06 2015 15:27
то есть из контроллера уже реверснутую нужрно передавать?
JhaoDa
@jhaoda
Aug 06 2015 15:27
@User195 можно во вьюхе реверсить
Это не труЪ, но мало ли...
Kirill
@kirill001
Aug 06 2015 15:28
Здравствуйте, помогите пожалуйста, поставил на сервак пхп 5.4, сервак на Centos7, версия ларавел 4.2, все модули подключены, в том числе mcrypt. При запуске ругается: Bcrypt hashing not supported.
в чем может быть деол?
Paul Klementyev
@klermonte
Aug 06 2015 15:29
@User195
@foreach(array_reverse($data) as $key => $value)
...
@endforeach
User195
@User195
Aug 06 2015 15:29
@klermonte а где лучше этим заниматься во вьюхе или в контроллере?
я про array_reverse
Paul Klementyev
@klermonte
Aug 06 2015 15:30
если тебе только в этом месте нужно в обратном порядке, то во вьюхе, а если везде, то в контроллере
bearn666
@bearn666
Aug 06 2015 15:30
Народ как можно исправить такой унылый код. В том плане чтобы и тот и тот роут давали один результат
Route::get('/', 'QuestionsController@create');
Route::get('/home', 'QuestionsController@create');
User195
@User195
Aug 06 2015 15:31
ок
Soprun Vladislav
@vlsoprun
Aug 06 2015 15:31
@bearn666
Route::get('/', 'QuestionsController@create');
Route::get('/home', 'QuestionsController@create');
// =)
bearn666
@bearn666
Aug 06 2015 15:33
@vlsoprun ясно)
Paul Klementyev
@klermonte
Aug 06 2015 15:34
@bearn666
Route::group(array('prefix' => '/'), function() { Route::get('home', 'QuestionsController@create'); });
хотя это древность какая-то, может и не работать
bearn666
@bearn666
Aug 06 2015 15:36
@klermonte спасибо
Soprun Vladislav
@vlsoprun
Aug 06 2015 15:37
Осторожно кастыль!!
Route::get('{path}', 'QuestionsController@create')->where('path', '/|home');
Paul Klementyev
@klermonte
Aug 06 2015 15:37
@vlsoprun чей-то, вполне себе решение
Kirill
@kirill001
Aug 06 2015 15:40
Кто-нибудь знает, как бороться с ошибкой Bcrypt hashing not supported.?
Paul Klementyev
@klermonte
Aug 06 2015 15:40
@vlsoprun как вариант
Route::get('/{path?}', 'QuestionsController@create')->where('path', 'home');
Evgeniy
@Ruzarh
Aug 06 2015 15:41
http://habrahabr.ru/post/264281/ Скоро множно будет в простгресе делать нормальный ON DUPLICATE KEY UPDATE
Paul Klementyev
@klermonte
Aug 06 2015 15:43
@kirill001 веб сервер перезагрузил после установки расширения?
Kirill
@kirill001
Aug 06 2015 15:44
@klermonte да
Paul Klementyev
@klermonte
Aug 06 2015 15:44
@kirill001 выведи в браузере phpinfo() и убедись, что mcrypt стоит
Kirill
@kirill001
Aug 06 2015 15:48
@klermonte enabled написано, но если я напишу сам password_hash('123', PASSWORD_BCRYPT, ['cost' => 10]), то вернется пустая строка
@klermonte что-то недоустановил получается... Но что?
Paul Klementyev
@klermonte
Aug 06 2015 15:48
а crypt() че вернет?
Kirill
@kirill001
Aug 06 2015 15:49
@klermonte хэш возвращает
@klermonte yum install php-mcrypt* вот так я его ставил
Paul Klementyev
@klermonte
Aug 06 2015 15:52

@kirill001 гляди, цитирую документацию:
PASSWORD_BCRYPT - Use the CRYPT_BLOWFISH algorithm to create the hash. This will produce a standard crypt() compatible hash using the "$2y$" identifier. The result will always be a 60 character string

вывод: юзай crypt() и не парься

Kirill
@kirill001
Aug 06 2015 15:53
@klermonte Так это стандартный ларавеловский модуль авторизации
Paul Klementyev
@klermonte
Aug 06 2015 15:53
от оно че, ну тогда хз)
тут вот чувак ваще сервак перезагрузил, и у него заработало
Kirill
@kirill001
Aug 06 2015 15:56
@klermonte ага, я видел
Paul Klementyev
@klermonte
Aug 06 2015 15:57
@kirill001 в deb системах этот пакет называется php5-mcrypt
Stanislav
@Stasevi4
Aug 06 2015 16:09
@kirill001 на deb была похожая проблема глянь в /etc/php5/cli | fpm | apache2 /conf.d создан ли линк на mcrypt.ini
Vitalii
@khotey
Aug 06 2015 16:32
Доброе время суток! Подскажите как запустить миграцию с внешними ключами, у меня есть 2 таблицы и получается одна независима, а вторая на нее ссылается по внешнему ключу и когда я запускаю миграцию вторая таблица создается первый и в итоге ошибка

Первая(независимая)

public function up()
    {
        Schema::create('roles', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name', 255);
            $table->timestamps();
        });
    }

Вторая

Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email')->unique();
            $table->string('password', 60);
            $table->string('recover', 255);
            $table->string('confirm', 255);
            $table->integer('role_id')->unsigned();
            $table->foreign('role_id')->references('id')->on('roles');
            $table->rememberToken();
            $table->timestamps();
        });
JhaoDa
@jhaoda
Aug 06 2015 16:36
This message was deleted
Vitalii
@khotey
Aug 06 2015 16:41
@jhaoda мол, независимые таблицы нужно создавать первыми ? что за pivot-таблица ? спасибо за ответ
Блиииин... ну хотел же просто отредактировать...
Paul Klementyev
@klermonte
Aug 06 2015 16:43
@jhaoda может MM для юзеров и ролей избыточно для его системы
JhaoDa
@jhaoda
Aug 06 2015 16:43
@klermonte ну я и предложил выбирать одно из двух
Vitalii
@khotey
Aug 06 2015 16:43
То есть, можно не выпендриваться со схемой, а связи уже реализовывать на уровне модели
JhaoDa
@jhaoda
Aug 06 2015 16:44
@khotey да
Paul Klementyev
@klermonte
Aug 06 2015 16:44
@khotey ну или в нужном порядке сделать создание таблиц
или создание ключа вообще в третью вынести, которая в самом конце будет
Nnxoxo
@Nnxoxo
Aug 06 2015 16:48
может кто-то подсказать как заапдейтить поле в бд?
JhaoDa
@jhaoda
Aug 06 2015 16:48
@Nnutthowze что есть «заапдейтить»?
Хотя не важно. Все действия со схемой выполняются через миграции. Все действия с данными — через DB или модель.
Nnxoxo
@Nnxoxo
Aug 06 2015 16:49
к примеру, у меня есть таблица phones и в ней естественно, есть поле phone_number
нужно изменить это поле для определенного юзера
JhaoDa
@jhaoda
Aug 06 2015 16:50
@Nnutthowze понятней не стало
Vitalii
@khotey
Aug 06 2015 17:07
теперь такая же проблема с сидами ))
[Illuminate\Database\QueryException]                                                                                                                                         
  SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`task`.`users`, CONSTRAINT `users_role_id_foreign`   
  FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`)) (SQL: insert into `users` (`email`, `password`, `recover`, `role_id`, `confirm`, `name`, `updated_at`, `created_at`) val  
  ues (khotey.v@gmail.com, y$cT5cusqPr5m3DkEEPGrgSujCjhiAPZsPIOsvQGtKlxxx9KruNc9Hi, what, 1, 0, Vitaliy, 2015-08-06 17:06:25, 2015-08-06 17:06:25))
 [PDOException]                                                                                                                                                               
  SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`task`.`users`, CONSTRAINT `users_role_id_foreign`   
  FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`))
JhaoDa
@jhaoda
Aug 06 2015 17:08
@khotey а зачем тебе вообще внешние ключи?
Vitalii
@khotey
Aug 06 2015 17:08
если удалится роль, то заменить на налл, к тому же mysql по внешним ключам быстро делает выборку
знаю что без них можно )
просто если дело дойдет до серьездных проектов, хотелось бы не лезть в базу и запросы писать, а в ларавели все настраивать
JhaoDa
@jhaoda
Aug 06 2015 17:09
@khotey т.е. ты допускаешь ситуацию, когда у тебя пользователи могут остаться без роли? Тебе не кажется это немного странным?
Vitalii
@khotey
Aug 06 2015 17:10
вдруг вместо одной роли станет другая, или не нужная, не смотри на текущий пример
JhaoDa
@jhaoda
Aug 06 2015 17:11
Короче, я для себя так и не понял, в чем выгода внешних ключей. Пока всё, что я делал, требовало явного контроля ссылочной целостности.
Т.е. если мы удаляем роль, то надо всем обезроленным присвоить новую роль
Paul Klementyev
@klermonte
Aug 06 2015 17:15
@jhaoda ну например, чтобы вручную не удалять комменты удаленного пользователя или статьи
JhaoDa
@jhaoda
Aug 06 2015 17:16
@klermonte я не удаляю пользователей физически из базы
Alex Soveliev
@suroviy
Aug 06 2015 17:18
ктони будь на nic.ru ларавельку ставил?
JhaoDa
@jhaoda
Aug 06 2015 17:27
@suroviy а вопрос-то в чём?
Alex Soveliev
@suroviy
Aug 06 2015 17:28
@jhaoda где там documentRoot подправить можно?
JhaoDa
@jhaoda
Aug 06 2015 17:29
@suroviy в ТП вопрос задать не проще ли?
Uladimir Sadkou
@GaintVlad
Aug 06 2015 17:31
Короче, я для себя так и не понял, в чем выгода внешних ключей. Пока всё, что я делал, требовало явного контроля ссылочной целостности.
То есть скрипач не нужен? Тоже мучаюсь, немогу заSeedить данные. Таблицы с обратными связями, какую из них первую заполнять хз. Руками 10 раз уже б набил в базу, но охота ж понять блин.
JhaoDa
@jhaoda
Aug 06 2015 17:35
@GaintVlad всё просто: нужно смоделировать в уме пару ситуаций, где, как тебе кажется, пригодились бы внешние ключи. И посмотреть, реально ли от них есть польза.
Я же не зря написал, что «я для себя не понял»...
Alex Soveliev
@suroviy
Aug 06 2015 17:43
nic.ru хостенг просто best, в ТП сказали что documentRoot менять нельзя...
Denis Isaychenko
@Rhincodon
Aug 06 2015 17:47
лучше VPS арендуй и не парься с хостингами, вообще не понимаю людей которые всё ещё используют хостинги с их ограничениями. Особенно смешно ограничение на кол-во сайтов :)
Paul Klementyev
@klermonte
Aug 06 2015 18:05
@Rhincodon экономия же)
Artur Gafurov
@assurrussa
Aug 06 2015 18:07
Всем привет! кто нибудь сталкивался с проблемой composer'a в debian 7 всё работает и скачивает, но команда composer update пишет просто ошибку убито???
Denis Isaychenko
@Rhincodon
Aug 06 2015 18:08
@klermonte какая, 100 рублей? :) Можно VPS купить за 5$ и там 100500 сайтов разместить, причём хоть на php, хоть на nodejs, хоть на ruby и устанавливать туда что душе пожелается )
Denis Isaychenko
@Rhincodon
Aug 06 2015 18:16
@assurrussa может оперативы не хватает, на VPS-ках обычно такие процессы убиваются
Artur Gafurov
@assurrussa
Aug 06 2015 18:18
@Rhincodon 512 мб стоит из них занято 248 мб
а сколько ему надо ?)
Denis Isaychenko
@Rhincodon
Aug 06 2015 18:21
@assurrussa это наверное зависит от кол-ва пакетов в зависимостях, хотя должно хватать. У меня такое было на flops.ru, тоже 512 стояло, но composer не хватало оперативки для обновления, он его убивал, пришлось на 1гб расширять
Artur Gafurov
@assurrussa
Aug 06 2015 18:23
@Rhincodon конечно как то только из-за этой команды расширять оперативку не прикольно)
самое интересно вчера хватало и обновляло а сегодня всё просто УБИТО)
Denis Isaychenko
@Rhincodon
Aug 06 2015 18:24
@assurrussa ну может не в этом дело, погугли )
Alex Soveliev
@suroviy
Aug 06 2015 18:42
@Rhincodon да это заказчика хостиг был, я его уже на VDS с агитировал...))
Artur Gafurov
@assurrussa
Aug 06 2015 18:45
@Rhincodon открыл 2 консольное окно запустил htop у меня реально оперативки не хватает( жаль надо расширятся)))
Orel
@2byte
Aug 06 2015 19:07
@User195 array_reverse()
Oleg Melnik
@olegmelnik
Aug 06 2015 19:14
Мужики, пытаюсь заюзать вот этот пакет https://github.com/lucadegasperi/oauth2-server-laravel . При регистрации пользователей куда мне записывать логин и пароль? Свою таблицу создавать или использовать из миграций пакета?
Там таблиц куча. Я хз куда и что записывать нужно
JhaoDa
@jhaoda
Aug 06 2015 19:18
@olezko46 там есть документация
Oleg Melnik
@olegmelnik
Aug 06 2015 19:21
@jhaoda ее мало и в ней этого не описано
JhaoDa
@jhaoda
Aug 06 2015 19:22
@olezko46 ты, если память мне не изменяет, третий день уже спрашиваешь про это пакет
Может пора самому разобраться?
Oleg Melnik
@olegmelnik
Aug 06 2015 19:24
@jhaoda ты думаешь мне самому приятно каждый раз писать сюда по любым идиотским вопросам?
JhaoDa
@jhaoda
Aug 06 2015 19:24
@olezko46 ну ты же пишешь
Oleg Melnik
@olegmelnik
Aug 06 2015 19:24
@jhaoda мб потому что выбора нет?
JhaoDa
@jhaoda
Aug 06 2015 19:24
Выбор есть всегда.
Oleg Melnik
@olegmelnik
Aug 06 2015 19:25
@jhaoda в гугле ничего нет, в документации мало чего написано
JhaoDa
@jhaoda
Aug 06 2015 19:25
Гугл и курение исходников с мануалами — лучший выход.
Oleg Melnik
@olegmelnik
Aug 06 2015 19:25
@jhaoda вот именно поэтому мне остается писаться сюда
JhaoDa
@jhaoda
Aug 06 2015 19:25
Наглая ложь, что в гугле ничего нет
Просто адски наглая
Oleg Melnik
@olegmelnik
Aug 06 2015 19:27
@jhaoda поверь, я умею пользоваться гуглом, stackoverflow и другими проектами
4gekkman
@4gekkman
Aug 06 2015 19:27
А у всех composer update так ацццки долго выполняется? У меня минут 5
Oleg Melnik
@olegmelnik
Aug 06 2015 19:27
@4gekkman у меня тоже
4gekkman
@4gekkman
Aug 06 2015 19:28
Сидишь и ждёшь, как дурак
А надо сидеть и ждать, как умный, да? )
Uladimir Sadkou
@GaintVlad
Aug 06 2015 20:16
повторюська
Есть нужда заюзать механизм заполнения договоров на основе типового шаблона.
Я вижу это так.
В БД делаю таблицу ВидДоговоров. Каждый виддоговора имеет текстовое поле с шаблоном: наполнение + спец ключи для вставки параметров.
Например: Настоящий договор заключен между [Org name] далее Продавец и [Partner name] далее Покупатель. Сумма договора: [text_area 1]. Срок договора [combo_box 1]. Примечание [text_area 2]... и т.д.
При создании нового договора выбирается вид договора и читается из БД соответствующий шаблон. Шаблон парсится на текст и параметры. Текст отображается пользователю без возможности редактирования, параметры выбираются-заполняются пользователем. Дальше договор на печать и в БД.
Буду рад советам /критике /ссылкам на что-то похожее.
berpcor
@berpcor
Aug 06 2015 20:24
Как вставить данные в pivot table при задании связи many to many?
berpcor
@berpcor
Aug 06 2015 20:32
Перефразирую. В pivot table есть дополнительные поля. При выполнении метода attach, мне нужно вставить и данные в эти дополнительные поля. Как это сделать?
Ищем раздел «Many To Many Relationships, Attaching / Detaching»
berpcor
@berpcor
Aug 06 2015 20:40
When working with a many-to-many relationship, the save method accepts an array of additional intermediate table attributes as its second argument:
Ага, оно. Спасибо. Упустил из виду.
Только не в attaching/detaching.
Save & Many To Many Relationships
JhaoDa
@jhaoda
Aug 06 2015 20:42
@berpcor ты спрашивал про attach? Я указал, где написано про attach.
Если бы ты спрашивал про save, я бы указал на «Save & Many To Many Relationships».
berpcor
@berpcor
Aug 06 2015 20:47
Да, точно. Мне нужен был аттач. ) Спать пора.
Andrey
@Quiss
Aug 06 2015 22:31
@/all кто не спит?)
Stanislav
@Stasevi4
Aug 06 2015 22:35
?
Andrey
@Quiss
Aug 06 2015 22:35
хз мне было скучно, решил узнать xD
как дела?)
Stanislav
@Stasevi4
Aug 06 2015 22:35
норм
Andrey
@Quiss
Aug 06 2015 22:36
Ладно) теперь могу спать со спокойной душой xD Спокойной ночи
Stanislav
@Stasevi4
Aug 06 2015 22:36
вот домой собираюсь
Andrey
@Quiss
Aug 06 2015 22:36
о_О
у тебя скок времени щас?
Stanislav
@Stasevi4
Aug 06 2015 22:36
18:36
Andrey
@Quiss
Aug 06 2015 22:36
А ну тогда нормально
xD в МСК 2ой час ночи
Stanislav
@Stasevi4
Aug 06 2015 22:36
:)
Alexander
@bobrovskikh
Aug 06 2015 22:52

Всем доброй ночи! Может кто подскажет насчет Intervention Image.

Вообщем все работало хорошо. Тут я решил попробовать закешировать роуты. После чего картинки перестали отображаться которые кэширует Intervention Image. Я убрал кэширование роутов, очистил кэш, но Intervention Image теперь перестал генерировать картинки в кэш (

Если в route:list смотреть, то роут cache/images/{template}/{filename} виден
Alexander
@bobrovskikh
Aug 06 2015 23:13
Разобрался )
Shmasya
@Shmasya
Aug 06 2015 23:14
Ребята, всем привет, подскажите по Sleeping-Owl v3 как сделать Custom-page и передать туда {{{ $title }}} который передаётся в return Admin::view($content, 'My Page Title');
Я хотел просто свой контроллер, и свой шаблон *.blade.php а когда просто использую Route::any('my-page', [
'as' => 'admin.my-page',
'uses' => '\App\Http\Controllers\MyPageController@myPage',
]); то этот самый {{{ $title }}} не передаётся