Фраемворк kohana, как вывести надпись статуса которая привязана к това
Цена договорная
Всем привет.
Кто работал с фраемворком кохана или косевен, добро пожаловать.
Есть заказы, к каждому закажу привязаны статусы, надо вывести в заказе статус заказа, на данный момент вывод есть, но он чет с лишкним кодом ведь можно сделать проще.
Код в шаблоне для вывода статуса:
<?php
if ($order->status_id) {
if (isset($statusArray[$order->status_id])) {
echo $statusArray[$order->status_id];
}
} ?>
Контроллер:
public function action_edit()
{
$id = (int)$this->request->param('id');
$orders = ORM::factory('Order', $id);
$orders->view = 1;
$orders->save();
if (isset($_POST['submit']))
{
$data = Arr::extract($_POST, array('status_id'));
$orders = ORM::factory('Order', $id);
$orders->values($data);
try
{
$orders->save();
$this->redirect('admin/orders/');
}
catch (ORM_Validation_Exception $e)
{
$errors = $e->errors('validation');
}
}
$status = ORM::factory('Status')
->find_all();
$user = ORM::factory('User')
->find_all();
$cats = ORM::factory('Category')
->find_all();
$statusArray = array();
foreach ($status as $key => $value)
{
$statusArray[$value->id] = $value->status_name;
}
$content = View::factory('admin/orders/edit')
->bind('id', $id)
->bind('order', $orders)
->bind('statusArray', $statusArray)
->bind('status', $status)
->bind('user', $user)
->bind('cats', $cats)
->bind('errors', $errors);
$this->template->page_title = 'Заявка';
$this->template->content = $content;
}
Что я хочу убрать и сделать проще вывод:
$statusArray = array();
foreach ($status as $key => $value)
{
$statusArray[$value->id] = $value->status_name;
}
и это
->bind('statusArray', $statusArray)
Оно не нужно по идеи, ибо можно и без этого вывести.
Я думаю кто понял, тот поймет о чем я )))
По типу так (ниже), но это выводит все статусы, просто выводит все статусы, а надо вывести статус который привязан к данному заказу.
<? foreach ($status as $stat): ?>
<?= $stat->status_name ?>
<? endforeach ?>
Кто работал с фраемворком кохана или косевен, добро пожаловать.
Есть заказы, к каждому закажу привязаны статусы, надо вывести в заказе статус заказа, на данный момент вывод есть, но он чет с лишкним кодом ведь можно сделать проще.
Код в шаблоне для вывода статуса:
<?php
if ($order->status_id) {
if (isset($statusArray[$order->status_id])) {
echo $statusArray[$order->status_id];
}
} ?>
Контроллер:
public function action_edit()
{
$id = (int)$this->request->param('id');
$orders = ORM::factory('Order', $id);
$orders->view = 1;
$orders->save();
if (isset($_POST['submit']))
{
$data = Arr::extract($_POST, array('status_id'));
$orders = ORM::factory('Order', $id);
$orders->values($data);
try
{
$orders->save();
$this->redirect('admin/orders/');
}
catch (ORM_Validation_Exception $e)
{
$errors = $e->errors('validation');
}
}
$status = ORM::factory('Status')
->find_all();
$user = ORM::factory('User')
->find_all();
$cats = ORM::factory('Category')
->find_all();
$statusArray = array();
foreach ($status as $key => $value)
{
$statusArray[$value->id] = $value->status_name;
}
$content = View::factory('admin/orders/edit')
->bind('id', $id)
->bind('order', $orders)
->bind('statusArray', $statusArray)
->bind('status', $status)
->bind('user', $user)
->bind('cats', $cats)
->bind('errors', $errors);
$this->template->page_title = 'Заявка';
$this->template->content = $content;
}
Что я хочу убрать и сделать проще вывод:
$statusArray = array();
foreach ($status as $key => $value)
{
$statusArray[$value->id] = $value->status_name;
}
и это
->bind('statusArray', $statusArray)
Оно не нужно по идеи, ибо можно и без этого вывести.
Я думаю кто понял, тот поймет о чем я )))
По типу так (ниже), но это выводит все статусы, просто выводит все статусы, а надо вывести статус который привязан к данному заказу.
<? foreach ($status as $stat): ?>
<?= $stat->status_name ?>
<? endforeach ?>
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.