小编Гео*_*ков的帖子

使用TableGateway在ZF2中左键连接

我有一张桌子:

*CREATE TABLE IF NOT EXISTS `blogs_settings` (
  `blog_id` int(11) NOT NULL AUTO_INCREMENT,
  `owner_id` int(11) NOT NULL,
  `title` varchar(255) NOT NULL,
  `meta_description` text NOT NULL,
  `meta_keywords` text NOT NULL,
  `theme` varchar(25) NOT NULL DEFAULT 'default',
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `date_created` int(11) NOT NULL,

  PRIMARY KEY (`blog_id`),
  KEY `owner_id` (`owner_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;*
Run Code Online (Sandbox Code Playgroud)

第二个表:

*CREATE TABLE IF NOT EXISTS `users` (
  `user_id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL,
  `email` varchar(255) NOT NULL,
  `password` varchar(128) …
Run Code Online (Sandbox Code Playgroud)

mysql frameworks zend-framework2 tablegateway

18
推荐指数
2
解决办法
3万
查看次数

Zend Framework 2重定向

如何重定向到另一个模块?

return $this->redirect()->toRoute(null, array(
    'module'     => 'othermodule',
    'controller' => 'somecontroller',
    'action'     => 'someaction'
));
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用,任何想法?

zend-framework2

10
推荐指数
3
解决办法
4万
查看次数

Yii2 AppAsset在布局中不生成css/js链接

好吧,我在AppAsset中声明了我所有的CSS和JavaScript内容,但我不能让它在前端视图中显示css和js链接.这是我的文件:

应用程序/资产/ AppAsset.php:

<?php

namespace app\assets;

use yii\web\AssetBundle;
class AppAsset extends AssetBundle {
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        'assets/css/bootstrap.min.css',
        'assets/plugins/weather-icon/css/weather-icons.min.css',
        ...
    ];
    public $js = [
    ];
    public $depends = [
        'yii\web\YiiAsset',
        'yii\bootstrap\BootstrapAsset',
    ];
}
Run Code Online (Sandbox Code Playgroud)

这是我的布局(app/modules/admin/layouts/admin.php):

<?php

use app\assets\AppAsset;

AppAsset::register($this);
?>

<?php $this->beginPage() ?>
<!DOCTYPE html>
<html lang="en">
    <head>
        <?php $this->head() ?>
        <?= $this->render('partials/head') ?>
    </head>
<body class="tooltips">
    <?= $this->render('partials/colour_panel') ?>
        <div class="wrapper">
            <?= $this->render('partials/top_navbar') ?>
            <?= $this->render('partials/left_sidebar') ?>
            <?= $this->render('partials/right_sidebar') ?>
            <div …
Run Code Online (Sandbox Code Playgroud)

layout assets yii2

8
推荐指数
2
解决办法
1万
查看次数

Zend Framework 2:清空isValid/getMessages

我正在创建注册表单:

这是我的行动:

public function registrationAction() {
    $form = new RegistrationForm();

    $request = $this->getRequest();
    if ($request->isPost()) {
        $users = new Users();
        $form->setInputFilter($users->getInputFilter());
        $form->setData($request->getPost());

        var_dump($form->isValid());
        exit;

        if ($form->isValid()) {
            $users->exchangeArray($form->getData());
            $this->getUsersTable()->addUser($users);
            $message = '????????????? ?? ???????! ?????? ?? ??????? ? ??????? ?? ???? ??????? ?? ???? ?? ????????? ????????.';
        }
    }

    return new ViewModel(array(
                'form' => $form,
                'message' => $message,
            ));
}
Run Code Online (Sandbox Code Playgroud)

这是我的表格:

namespace Main\Form;

use Zend\Form\Form;

class RegistrationForm extends Form {

public function __construct($name = null) {
    parent::__construct('User');

    $this->add(array(
        'name' => …
Run Code Online (Sandbox Code Playgroud)

php forms zend-framework2

5
推荐指数
3
解决办法
9563
查看次数

根据数据库结果设置 Yii2 catchAll 路由

<?php

namespace app\modules\site\controllers;

use Yii;
use yii\filters\AccessControl;
use yii\web\Controller;
use app\models\SiteSettings;

class CommonController extends Controller {

public function init() {
    Yii::$app->language = 'bg-BG';
    Yii::$app->formatter->locale = 'bg-BG';
    Yii::$app->params['siteSettings'] = SiteSettings::find()->one();

    if (Yii::$app->params['siteSettings']->in_maintenance == 1) {
        Yii:$app->catchAll = ['index/maintenance', 'message' => Yii::$app->params['siteSettings']->maintenance_message];
    }
}
Run Code Online (Sandbox Code Playgroud)

}

我尝试从 CommonController init 方法中设置 catchAll 路由,但它引发了一个错误:

从空值创建默认对象

是否可以根据数据库提供的条件设置 catchAll 路由?

php routes yii2

5
推荐指数
1
解决办法
5655
查看次数

ZF2 EdpModuleLayouts

我有EdpModuleLayouts模块的问题.我将Module.php放在module/EdpModuleLayouts /目录中,其中包含以下内容:

<?php
namespace EdpModuleLayouts;

class Module {

public function onBootstrap($e) {
    $e->getApplication()->getEventManager()->getSharedManager()->attach('Zend\Mvc\Controller\AbstractActionController', 'dispatch', function($e) {
                $controller = $e->getTarget();
                $controllerClass = get_class($controller);
                $moduleNamespace = substr($controllerClass, 0, strpos($controllerClass, '\\'));
                $config = $e->getApplication()->getServiceManager()->get('config');
                if (isset($config['module_layouts'][$moduleNamespace])) {
                    $controller->layout($config['module_layouts'][$moduleNamespace]);
                }
            }, 100);
    }
}
Run Code Online (Sandbox Code Playgroud)

我还在config/application.config.php中注册了它:

return array(
'modules' => array(
    'EdpModuleLayouts',
    'Main',
    'Administrator',
    'Object'
),
'module_layouts' => array(
    'Main' => 'layout/main',
    'Administrator' => 'layout/admin',
),
'module_listener_options' => array(
    'module_paths' => array(
        './module',
    ),
    'config_glob_paths' => array(
        'config/autoload/{,*.}{global,local}.php',
    ),
),
);
Run Code Online (Sandbox Code Playgroud)

"main"模块的配置如下所示:

<?php
return array( …
Run Code Online (Sandbox Code Playgroud)

layout module zend-framework2

4
推荐指数
1
解决办法
1483
查看次数

Yii2在一个动作中有多种形式

在单个操作中处理多个表单的正确方法是什么?

这是我的模型/ MembersBans.php

<?php

namespace app\models;

use Yii;
use yii\behaviors\TimestampBehavior;
use app\models\Members;

class MembersBans extends \yii\db\ActiveRecord {

public $username;

public static function tableName() {
    return '{{%members_bans}}';
}

public static function primaryKey() {
    return array('ban_id');
}

public function behaviors() {
    return [
        [
            'class' => TimestampBehavior::className(),
            'createdAtAttribute' => 'date_added',
            'updatedAtAttribute' => 'last_updated',
        ],
    ];
}

public function rules() {
    return [
        [['ban_id', 'ban_memberid', 'date_added', 'last_updated'], 'integer'],
        [['username', 'end_date'], 'safe'],
        ['end_date', 'date', 'format' => 'yyyy-mm-dd'],
        [['ban_ip'], 'string', 'max' => 40],
        [['reason'], 'string', …
Run Code Online (Sandbox Code Playgroud)

forms yii2

4
推荐指数
1
解决办法
2万
查看次数