Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Всем привет=)) Я новичок в Laravel Только сегодня скачал библиотеку Что делать дальше ? С чего начинать ? Обьесните плиз=)) Желательно на пальцах=))
Ознакомься с документацией и вот с этой статьей
Доброго времени суток!
А можно ли к Laravel прикрутить свой нарисованный шаблон(допустим ипсользуя photoshop или artisteer или др. софт) и как это осуществить?
Дорогие комрады!
С наступающим Вас новым годом, счастья и трудовых успехов в программированнии !
Всего наилучшего и больше энтузиазма в работе!
Я нашел в чем моет быть проблема
У меня в проекте установлен ProfilerВ папке app/config я закоментил алиас и провадер для Profiler
Но по прежнему у меня ничего не отображается, как мне решить данную проблему?
Решил просто, все переустановивил и залил по новой проект, предварительно удалив расширения который больше не поддерживаются в laravel 4.1
Отвечу на свои два вопроса сам
$input = Input::all();
$validation = Validator::make($input,Configs::$rules);
if ($validation->passes()){
foreach($input as $key=>$value){ // здесь мы перебираем массив input на ключ-значение и просто update'им в цикле
DB::table('config')
->where('key', $key)
->update(array('value' => $value
));
}
Cache::forget('DoncodeConfig'); // чтбы перезаписать кэш, для начала его удалим, а потом снова запишем получившееся данные
$config = Configs::all();
Cache::put('DoncodeConfig',$config, 1440);
return Redirect::to('settings')->with('message', 'Данные успешно записаны') ;
}
else {
return Redirect::to('settings')->withErrors($validation);
}
Смею предположить что наврятли
Но возможен такой вариант, чтоб использовать один фреймворк для сайтов можно настроить несколько сред
Настройка среды
Еще можно посмотреть здесь
http://chrishayes.ca/blog/code/laravel- … figuration
И от того как назовете среду то будет у вас что то наподобие того
www.mysite.environment.*
Иными словами возможно реализовать сайты на домене 2 го уровня
Настоятельно рекомендую от слухам переходить к документации))
А про механизм авторизации можно прочитать и здесь Расширение фреймворка
Добрый день!
Нужна ваша помощь!
После обновления до версии 4.1.8 у меня появились вместо проекта пустые страницы, делал согласно данной инструкции Upgrading To 4.1 From 4.0
я не думаю так.
Дело в том что "asterisk_main_context", 'tooltip' и другие переменные я получаю из Input.
Эти переменные по любому будут приходить ко мне, т.к. они завязаны с формой
В документации есть отличный пример с insert-ом
DB::table('users')->insert(array(
array('email' => 'taylor@example.com', 'votes' => 0),
array('email' => 'dayle@example.com', 'votes' => 0),
));
я думал также сделать и с методом update
а вообще есть ли примеры update сразу нескольких строк?
И можно еще спросить дабы не плодить лишние темы, в $input = Input::all(); у меня храниться массив переменных которых необходимо занести в БД методом update
Я выполняю это так
if(Input::has('asterisk_main_context')){
$this->Configs->where('key','=','asterisk_main_context')
->update(array('value' => $asterisk_main_context))->get();
}
...
if(Input::has('tooltip')) {
$this->Configs
->where('key','=','tooltip')
->update(array('value' => $tooltip ));
}
как в моем случае можно оптимизировать update чтобы не плодить запросы к бд а уместить в один запрос?
у меня есть БД config откуда данные кэшируются
по идеи если все удачно, то данные полученные в методе store должны попасть в эту бд, а они не попадают( мистическим образом)
Я создал бд config1 и данные туда успешно записывались
По этому даже не знаю что я не так делаю(
У меня есть фильтр
App::before(function($request)
{
if(!Cache::has('DoncodeConfig')){
$config = Configs::all();
Cache::put('DoncodeConfig',$config, 1440);
}else{
$config = Cache::get('DoncodeConfig');
}
foreach ($config as $value) {
Config::set('doncode.'.$value->key, $value->value);
}
#
});
Я создал метод контроллера store:
public function store()
{
$input = Input::all();
$asterisk_main_context= $input['asterisk_main_context'];
...
$tooltip = $input['tooltip'];
$validation = Validator::make($input, Configs::$rules);
if ($validation->passes()) {
if(Input::has('asterisk_main_context')){
$this->Configswhere('key','=','asterisk_main_context')->update(array('value' => $asterisk_main_context))->get();
}
...
if(Input::has('tooltip')) {
$this->Configs
->where('key','=','tooltip')
->update(array('value' => $tooltip ));
}
return Redirect::to('settings');
}
else {
return Redirect::to('settings')->withErrors($validation);
}
}
как мне после выполнения store перезаписать кэш?
Побывал так:
// app/controllers/SettingsController.php
public function store()
{
$input = Input::all();
$asterisk_main_context= $input['asterisk_main_context'];
...
$tooltip = $input['tooltip'];
$validation = Validator::make($input, Configs::$rules);
if ($validation->passes()) {
if(Input::has('asterisk_main_context')){
$this->Configswhere('key','=','asterisk_main_context')->update(array('value' => $asterisk_main_context))->get();
}
...
if(Input::has('tooltip')) {
$this->Configs
->where('key','=','tooltip')
->update(array('value' => $tooltip ));
}
$config = Configs::all();
Cache::put('DoncodeConfig',$config, 1440);
return Redirect::to('settings');
}
else {
return Redirect::to('settings')->withErrors($validation);
}
}
Так к сожалению не получается, подскажите пожалуйста как решить задачу?
Доброго времени суток!
Подскажите пожалуйста , я хочу понять как правильно пользоваться методом Input::all();
У меня есть метод контроллера
public function store()
{
$input = Input::all();
$asterisk_main_context= Input::get('asterisk_main_context');
$asterisk_col_digits= Input::get('asterisk_col_digits');
$asterisk_recall_context= Input::get('asterisk_recall_context');
$asterisk_robo_context= Input::get('asterisk_robo_context');
$asterisk_car_time_limit= Input::get('asterisk_car_time_limit');
if(Input::has('asterisk_main_context')){
DB::table('config1')
->where('key','=','asterisk_main_context')
->update(array(
'value' => $asterisk_main_context
));
}
if(Input::has('asterisk_col_digits'))
{
DB::table('config1')
->where('key','=','asterisk_col_digits')
->update(array('value' => $asterisk_col_digits));
}
if( Input::has('taxi_name') && isset($input)) {
DB::table('config1')
->where('key','=','taxi_name')
->update(array('value' => $taxi_name));
}
if(Input::has('asterisk_recall_context')) {
DB::table('config1')
->where('key','=','asterisk_recall_context')
->update(array('value' => $asterisk_recall_context));
}
if(Input::has('asterisk_robo_context')) {
DB::table('config1')
->where('id',11)
->update(array('value' => $asterisk_robo_context));
}
if(Input::has('asterisk_car_time_limit')) {
DB::table('config1')
->where('id',11)
->update(array('value' => $asterisk_car_time_limit));
}
if(Input::has('asterisk_car_time_limit')) {
DB::table('config1')
->where('id',11)
->update(array('value' => $asterisk_car_time_limit));
}
return Redirect::action('SettingsController@index');
}
Ознакомившись со статьей Запросы и ввод мне хочеться понять, как правильно использовать Input::all() чтобы каждый раз не объявлять переменную с методом Input::get?
Добрый день
подскажите как правильно разместить сайт, написанный на laravel 4 на хостинге?
Ведь насколько я понимаю необходимо проект всегда запускать командой
php artisan serve
В общем есть нужда использовать Twitter bootstrap в своих проектах. Хотелось бы узнать как грамотно подключить bootstrap к laravel 4. Читал, что в laravel 3 использовался bundle bootstrapper, но в 4 версии при попытке установить данный бандл ругается, что в namespace bundle нет комманд.
А если еще будут вопросы то можно посмотреть тут
Добрый день!
Подскажите пожалуйста как мне корректно сделать?
У меня есть модель Configurations и обращается она к таблице conf
В этой таблице есть поле "value" из которого мне нужно вытащит несколько значений
Я нашел выход следующим способом
$taxicountry = Configurations::where('key','=','taxi_country')
->get();
foreach($taxicountry as $k){
$taxi_country= $k->value.'</br>';
}
$taxicity = Configurations::where('key','=','taxi_city')
->get();
foreach($taxicity as $k){
$taxi_city= $k->value.'</br>';
}
$taxiname = Configurations::where('key','=','taxi_name')
->get();
foreach($taxiname as $k){
$taxi_name= $k->value.'</br>';
}
Но я тут несколько раз обращаюсь к модели, и соответственно идет 3 запроса к БД - по моему это не корректно, как мне оптимизировать запрос?
Laravel не подходит Денверу, так как у последнего нельзя указать document root на произвольную папку, в случае Laravel - на папку public. У Денвера все железно должно быть в www и индивидуально никак не поменять (кроме как залезть в шаблон конфига Апача и добавить нужный VirtualHost)
Переходите с Денвера на Open Server (http://open-server.ru/) или другую сборку. WampServer может быть неудобен тем, что там нельзя создать виртуальный домен, нужно все держать в папках на http://localhost . Но, возможно, я ошибаюсь, и это уже поправили.
Встроенными методами сделать виртуальный хост нельзя, но можно чучуть отредактировать)
1. Тебе необходимо запустит комнадную строку от имени администратора и пройти в папку где распокан у тебя Laravel
В моем случае
cd C:\wamp\www\laravel
далее тебе необходимо выполнить следующую команду
php artisan serve
Если все хорошо то появиться строка
Laravel development server started on http://localhost:8000
2. Можешь перейти на http://localhost:8000 и увидеть
А лучше воспользовать отличной статьей форума и установить WampServer
p.s.а еще лучше отказаться от Windows и перейти на Linux!!
Спасибо
Методом научного тыка сам дошел, но всеравно за ответ спасибо!))
Fluent запрос корректен, у меня какимто боком пустая страница, не понятно почему
Profiler показывает что данные из бд получаю
array(20) { [0]=> object(stdClass)#1126 (9) { ["id"]=> string(3) "108" ["phone"]=> string(10) "0506944344" ["createtime"]=> string(19) "2013-11-13 11:07:58" ["adres"]=> string(35) "аПбаОбаПаЕаКб ааЕаНаИаНаА, 25" ["adres2"]=> string(0) "" ["comm"]=> string(0) "" ["parkid"]=> string(1) "0" ["distance"]=> string(1) "0" ["cost"]=> string(1) "0" } [1]=> object(stdClass)#1127 (9) { ["id"]=> string(3) "105" ["phone"]=> string(10) "0506944344" ["createtime"]=> string(19) "2013-11-13 10:52:07" ["adres"]=> string(35) "аПбаОбаПаЕаКб ааЕаНаИаНаА, 25" ["adres2"]=> string(0) "" ["comm"]=> string(0) "" ["parkid"]=> string(1) "0" ["distance"]=> string(1) "0" ["cost"]=> string(1) "0" } [2]=> object(stdClass)#1128 (9) { ["id"]=> string(3) "104" ["phone"]=> string(10) "0506944344" ["createtime"]=> string(19) "2013-11-13 10:48:31" ["adres"]=> string(35) "аПбаОбаПаЕаКб аа
.....
Но почему не выводятся они загадка
dd($parkings->get()); - пустая страница( также шаблоны не загружает)
Добры день форумчане
Ситуация следующая
Требуеться перенести php запрос к бд
Вот запрос
$result = db_query("SELECT orders.id, clients.phone, orders.createtime, client_adres.adres, client_adres.adres2, client_adres.comm, orders.parkid, orders.distance, orders.cost FROM `clients`, `orders`, `client_adres` WHERE orders.status=0 AND clients.id=orders.clientid AND orders.adresid=client_adres.id ORDER BY orders.id DESC");
$orders_radio = db_fetch($result);
правильно ли я сотсавляю запрос во fluent?
$Parkings = DB::table('clients')
->join('orders','orders.clientid','=','clients.id')
->join('client_adres','client_adres.id','=','orders.adresid')
->select('orders.id', 'clients.phone', 'orders.createtime', 'client_adres.adres', 'client_adres.adres2', 'client_adres.comm', 'orders.parkid', 'orders.distance', 'orders.cost')
->where('orders.status','=',0)
->orderBy('orders.id', 'DESC')
->get();
Но у меня на странице parking почемуто пустая белая страница(хотя задан шаблон!), хотя если делать запрос в MySQL, то выдает таблицу с данными ,почему?
@section('content')
@if ($parkings->count())
<table class="table table-striped table-bordered">
<thead>
<tr>
<th>ID</th>
<th>Телефон</th>
<th>Дата создания</th>
<th>Адрес</th>
</tr>
</thead>
<tbody>
@foreach ($parkings as $parking)
<tr>
<td>{{{ $parking->id }}}</td>
<td>{{{ $parking->phone }}}</td>
<td>{{{ $parking->createtime }}}</td>
<td>{{{ $parking->adres }}}</td>
</tr>
@endforeach
</tbody>
</table>
@else
@endif
@stop
А более корректно будет так.
Я к примеру использую blade шаблон
И соотвественно создал фаил ajaxform.blade.php в views/Chats
@foreach ($Chats as $Chat)
<tr>
<td><span class="label label-warning">{{{ date(" d.m",$Chat ->time)}}}</span>{{{date(" H:i:s",$Chat ->time) }}}</td>
<td>{{{ $Chat->ch }}} - {{{ $Chat->poz }}}</td>
<td>
@if ($Chat->private)
{{ ($Chat->message) }} <span class="label label-danger">Приват</span>
@else
{{ ($Chat->message)}}
@endif
</td>
</tr>
@endforeach
Далее в index.blade.php я с помошью шаблона blade вывел действия своего кода, предварительно создав ajax запрос
@section('scripts')
<script type="text/javascript" src="jquery.js"></script>
<script>
function show() {
var url = $(this).attr('action');
$.ajax({
url:url,
dataType:'html',
data: {ajax:true},
type:'GET',
success:function(html){
$('#from_ajax').html(html);
}
});
}
setInterval(show , 5000)
</script>
@stop
а в самом шаблоне вывел с помощью @include
@include('Chats.ajaxform', array('Chats'=>$Chats))
спасибо за разяснение
но всеравно у меня не получаеться
верно ли я понимаю суть работы контроллеров laravel 4
я создал ChatsController@index котороый мне выводит страницу /chats
public function index()
{
$Chats = $this->Chat->orderBy('time', 'desc')->paginate(18);
Profiler::disable();
return View::make('Chats.index', compact('Chats'));
}
далее метод store отвечающий за сбор данных из формы
public function store()
{
$MSG = Input::get('MSG');
$user = Auth::user()->username;
if(Input::has('MSG'))
{
$this->Chat->insert(array(
'ch' => 0,
'poz'=> 0,
'time'=> time(),
'message'=> " <От: $user> "." ".$MSG,
'private'=> 0
));
}
return Redirect::route('info.chats.index');
}
я просто не понимаю что мне загружать ajax запросом ( в парметр sucsees что нужно вставить?)?
могли бы пример с laravel 4 показать ?
у меня задача реализовать чат