
Николай
20.01.2017
09:35:05
дешевле выходит юзать уже развернутый сервис от гугла

Евгений
20.01.2017
12:16:54
привет
может знает кто нибудь систему баннеров доп пакетом на laravel? надо вставлять баннеры картинками, и считать количество показов

∀RTUR
20.01.2017
14:48:28

Google

JT
20.01.2017
15:43:57
привет
а может кто-нить ткнуть меня носом в ..... что-то
пишу ЮнитТест, для тестирования API
надо проверить, что отправляя POST-ом raw json в ответ получу json
а лара сопротивляется
public function testApiLoginByPOST()
{
Auth::logout();
$this->post('api/v1/login',[
'email' => 'jst@test.lan',
'password' => '123456'
], [
'CONTENT_TYPE' => 'application/json'
])->seeJson(['status'=> true]);
}
вот не хочет тест ложить именно как raw строку
никто с таким не сталкивался ?

Виталий
20.01.2017
15:48:37
$this->json('POST', 'url', $params)->seeJson(['status' => true]);

JT
20.01.2017
15:50:25
вот именно, а как отправить raw ???
что-то никак не могу найти

Виталий
20.01.2017
15:50:41

Google

Виталий
20.01.2017
15:50:47
$this->json

JT
20.01.2017
15:52:15
уря!!! спасибо тебе милчеловек!!!!

Виталий
20.01.2017
15:52:30
Обращайся)

JT
20.01.2017
16:04:50
@vsbeats а как из ответа взять голый json ?

Виталий
20.01.2017
16:05:57
А вот этого не знаю, к сожалению, а зачем?

JT
20.01.2017
16:07:31
да там даскидистый json и надо оттуда данные использовать в следующих запросах

Виталий
20.01.2017
16:08:54
Ну по идее $this->json возвращает ответ.
Засовывай в переменную и юзай дальше

JT
20.01.2017
16:10:32
не, нифига так не пойдет!!! вот как поехало:
$response = $this->json('POST',
'api/v1/login',[
'email' => 'jst@test.lan',
'password' => '123456'
]);
$response->assertResponseOk();
$content = $response->decodeResponseJson();

Виталий
20.01.2017
16:11:00
Ну так я это и имел ввиду)

Jurabek
21.01.2017
07:25:31
/

Евгений
21.01.2017
10:11:57
посоны, посмотрите код
public function scopeToShow($query, $flag = 1)
{
return $query->where('is_active', $flag)->whereColumn('views', '<', 'max_views')->where('end_date', '=', '0000-00-00 00:00:00')->orWhere('end_date', '>', Date::now());
}
как можно упростить вот с датой 0000-00-00...
это типа баннеры, который проходят условия для показа
если баннер активирован, если количество показом меньше максимального количества показов, и если дата меньше финишной даты, но по дефолту там дата 0000-00, поэтому надо учесть что если дата дефолтная то баннер подходит

Dmitry
21.01.2017
10:14:17
Так нулевая меньше любой же

Евгений
21.01.2017
10:14:26
да

Dmitry
21.01.2017
10:14:52
А, я тебя не так понял

Евгений
21.01.2017
10:14:57
но если у меня end_date нудевая, то она явно меньше чем date::now(), тj есть не пройдет, а показывать надо
ну то есть моя выборка вроде как работает, но не знаю как упростить вот сравнение с 0000

Google

Dmitry
21.01.2017
10:15:50
А как это - дефолтная дата
Ну в смысле откуда у тебя в бд вообще берутся значения с дефолтной датой

Евгений
21.01.2017
10:16:19
смотри, добавляю баннер в системе, и задаю финишную дату до которой баннер показывается, но могу и ничего не задавать, тогда в базу пишутся нули

Dmitry
21.01.2017
10:17:36
Так а ты всегда задавай

Евгений
21.01.2017
10:17:52
блин, при моей выборке не срабатывает сравнение с максимальным количеством показов
можно конечно им в таком случае задавать дату + 100 лет

Dmitry
21.01.2017
10:18:40
Ну да))

Евгений
21.01.2017
10:18:52
блин, ну немного тупо просто))

Dmitry
21.01.2017
10:19:45
Ну а нулевая дата тоже имхо не пример логичности

Евгений
21.01.2017
10:19:56
жаль у даты нельзя задать null
ну ладно, вроде всё сделал, пусть пока так работает, если что быстро поменять можно будет))

Miras
21.01.2017
10:46:13
Кто нибудь может объяснить что за двоеточие в абстрактом методе.

Miras
21.01.2017
10:46:14
https://github.com/domnikl/DesignPatternsPHP/blob/master/Creational/AbstractFactory/AbstractFactory.php


Юрий
21.01.2017
10:48:59
Пхп7
Типы скалярных параметров и подсказки (hints) по возвращаемым типам
В PHP 7 расширили ранее существовавшее объявление параметров в методах (классах, интерфейсах и массивах) путем добавления четырех скалярных типов — целого (int), с плавающей запятой (float), логического (bool) и строкового (string) в качестве возможного типа параметра.
Кроме того, опционально мы можем указать тип результата, возвращаемого функцией или методом. Поддерживаются типы bool, int, float, string, array, callable, имя класса или интерфейса и parent (для методов класса).
class Calculator
{
// объявляем, что параметры имеют целый тип integer
public function addTwoInts(int $x, int $y): int {
// явно объявляем, что метод возвращает целое
return $x + $y;
}
}
Объявление типов позволит строить прозрачные приложения, избегая передачи и возврата неверных значений при работе с функциями. Другие плюсы — появление анализаторов статического кода и IDE, предлагающих более ясное отображение кода при отсутствии документирующих примечаний DocBlocks.


Alexander
21.01.2017
10:50:23
могу обхяснить
возвращаемый тип
сам активно использую в фабриках
твои фабрики наследуются от base фабрики
которую ты указываешь в creator'е

Google

Alexander
21.01.2017
10:51:20
типизация во все поля:3
вот живой пример

Юрий
21.01.2017
10:54:13
Но стоит учитывать что благодаря слабой типизации пхп если ты укажешь там тип строки например, крайне вероятно что он инты через нее пропустит
Просто приведя тип к строке

Admin
ERROR: S client not available

Alexander
21.01.2017
10:54:56
ну если strict mode не выставить не пропустит

Юрий
21.01.2017
10:54:58
declare(strict_types=1); в каждом файле после открывающего тега пхп в таком случае ставят

Alexander
21.01.2017
10:55:02
а в обычном режиме не тестил..
да да
либо опцией в пыхе

Юрий
21.01.2017
10:55:29
Вообще это звучит как костыль(

Miras
21.01.2017
11:05:17
Т.е я правильно понял, если тип результата я буду указывать имя класса. То должен возвращаться этот класс, точнее экземпляр объекта?

Alexander
21.01.2017
11:06:04
да, экземпляр это класса или наследник

Miras
21.01.2017
11:08:03
Спасибо, очень помогли.

Ilyas
21.01.2017
11:27:20
Это типа как Generics в Java?

Юрий
21.01.2017
11:51:19
http://symfony.com/blog/new-in-symfony-3-3-dotenv-component
забавно, в симфони тоже .env запилили

? ? ? Alex ? ? ?
21.01.2017
16:26:57
ну а что dotenv удобненький

Dmitriy
21.01.2017
16:30:03
Так не в этом смысл, в том что Фабиен создал свой велосипед.

Юрий
21.01.2017
17:31:09

Google

Dmitriy
21.01.2017
18:13:05

darkwoolf
21.01.2017
20:25:54
вот такая ошибочка
Route::any('/', function (){
return view("welcome");
});
вот это весь код в routes/web.php
что может быть не так
или какую инфу еще дать?

Denis
21.01.2017
20:28:53
Route::get('/', function (){
return view("welcome");
});
попробуй через get

darkwoolf
21.01.2017
20:29:57
ничего не изменилось

Denis
21.01.2017
20:33:30
тебе надо писать так
Route::get('public/', function (){
return view("welcome");
});
или настроить в настройках апача чтоб public был начальной

darkwoolf
21.01.2017
20:37:42
спасибо
только не пойму