'default/<id:\d+>/brand-<brand:\d+>' => 'default/index',
'default/<id:\d+>' => 'default/index',
'default' => 'default/index',
echo Html::a('test', ['default/index', 'id' => $id, 'brand' => $brand])
echo Html::a('test', ['default/index', 'id' => $id])
echo Html::a('test', ['default/index'])
http://site.loc/default/index/3/brand-2
http://site.loc/default/index/3
http://site.loc/default/
RewriteEngine On
RewriteRule ^(frontend|backend)/web/ - [L]
RewriteCond %{REQUEST_URI} ^/(admin)
RewriteRule ^admin(\/?.*)$ backend/web/$1 [L]
RewriteCond %{REQUEST_URI} ^/
RewriteRule ^(\/?.*)$ frontend/web/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
'baseUrl' => '/admin'
http://site.com
попадёте на frontend, а по адресу http://site.com/admin
- в админку.http://site.com/subsite
.RewriteEngine On
RewriteRule ^(frontend|backend)/web/ - [L]
RewriteCond %{REQUEST_URI} ^/(subsite/admin)
RewriteRule ^admin(/.*)?$ backend/web/$1 [L]
RewriteCond %{REQUEST_URI} ^/(subsite)
RewriteRule ^(.*)$ frontend/web/$1 [L]
$baseUrl = str_replace('/backend/web', '', (new yii\web\Request)->getBaseUrl());
'baseUrl' => $baseUrl . '/admin'
class DefaultController extends Controller
{
public $test;
public function actionIndex()
{
$this->test = 'test';
/* остальной код метода */
}
}
<?= Yii::$app->controller->view->context->test ?>
$(function() {
$('#form-data').on('submit', function(e){
e.preventDefault()
var form = $(this); // Предположу, что этот код выполняется в обработчике события 'submit' формы
var data = new FormData(); // Для отправки файлов понадобится объект FormData. Подробнее про него можно прочитать в документации - https://developer.mozilla.org/en-US/docs/Web/API/FormData
// Сбор данных из обычных полей
form.find(':input[name]').not('[type="file"]').each(function() {
var field = $(this);
data.append(field.attr('name'), field.val());
});
// Сбор данных о файле (будет немного отличаться для нескольких файлов)
var filesField = form.find('input[type="file"]');
var fileName = filesField.attr('name');
var file = filesField.prop('files')[0];
data.append(fileName, file) ;
// Отправка данных
var url = 'upload.php';
$.ajax({
url: url,
type: 'POST',
data: data,
contentType: false,
cache: false,
processData:false,
success: function(response) {
console.log(response)
}
});
})
});
<form id="form-data" action='#'>
<input type="file" name="test" multiple>
<input type="submit" name='submit' value="Send">
</form>
<select name="spjax" id="spjax">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<?php
Pjax::begin([
'id' => 'view-mode-pjax'
])
?>
<div class="col-lg-4">
<h2>Heading <?= $Ipjax ?></h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et
dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip
ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur.</p>
<p><a class="btn btn-default" href="http://www.yiiframework.com/doc/">Yii Documentation »</a></p>
</div>
<?php
Pjax::end();
$this->registerJs("
$(function(){
$('#spjax').on('change', function(){
var Id = $(this).val()
console.log(Id)
$.pjax.reload({
container: \"#view-mode-pjax\", // контейнер, в котором надо обновить данные.
url: window.location.href,
timeout: 0,
data: {
'id': Id // данные, которые отправляются на сервер.
},
});
})
})
", View::POS_END)
?>
public function actionIndex()
{
$Ipjax = Yii::$app->request->get('id') ?: null;
return $this->render('index', ['Ipjax' => $Ipjax]);
}
<?php
yii\widgets\Pjax::begin(['id' => 'new_note', 'enablePushState' => false]) ?>
<?= Html::beginForm(['/system/system/fastsearch'], 'post', ['data-pjax' => '1','enctype' => 'multipart/form-data', 'class'=>'form-inline' ]) ?>
<?= Html::input('text', 'search', "", ['class' => "form-control form-control-sm ml-3 w-75"]) ?>
<?= Html::submitButton('<i class="glyphicon glyphicon-search"></i> Найти', ['class' => 'btn btn-default', 'id'=>'press_search'])?>
<?= Html::endForm() ?>
<div id="reload-pjax"><?= $search ?? null ?></div>
<?php Pjax::end();
?>
public function actionFastsearch()
{
if(Yii::$app->request->isAjax){
$search = Yii::$app->request->post('search');
return $this->render('index', ['search' => $search]);
}
}
<?php
Pjax::widget([
'id' => 'reload-pjax',
'enablePushState' => false,
'enableReplaceState' => false,
'formSelector' => '#options-form',
'submitEvent' => 'submit',])
?>
<?= Html::beginForm(['/site/fastsearch'],
'post',
[
'class'=>'form-inline',
'id' => 'options-form'
]) ?>
<?= Html::input('text', 'search', "", ['class' => "form-control form-control-sm ml-3 w-75"]) ?>
<?= Html::submitButton('<i class="glyphicon glyphicon-search"></i> Найти', ['class' => 'btn btn-default', 'id'=>'press_search'])?>
<?= Html::endForm() ?>
<div id="reload-pjax"></div>
'value' => 'profile.last_name'
. Так же нельзя сделать свойства модели (сущности), приватными. Из-за чего состояние модели можно изменить где угодно и вы никак не проконтролируете это.Yii::$app->user->id
. Вам приходится делать докблок, что User
это common/auth/Identity
, а не yii/web/User
sudo systemctl reload ssh.service
sudo systemctl status ssh.service
фев 22 22:43:11 srv16 systemd[1]: Reloading OpenBSD Secure Shell server...
фев 22 22:43:11 srv16 systemd[1]: Reloaded OpenBSD Secure Shell server.
фев 22 22:43:11 srv16 sshd[462]: Server listening on 0.0.0.0 port 4453.
фев 22 22:43:11 srv16 sshd[462]: Server listening on :: port 4453.
container=<string>
когда имя интересующего контейнера известно и постоянно.restart
– пусть контейнер перезапускается автоматом после падения. И может, при запуске как-то куда-то отправляет «Доброе утро, админ!»