小编Kim*_*nce的帖子

如何在colgroup上获得轮廓边框?

我有一个包含17列的表,分为3列组.我可以使用CSS设置背景颜色,这表明我的CSS选择器很好.但是,我无法在每个colgroup的外部设置边框.

首先我尝试了这个CSS:

colgroup.inbound, colgroup.outbound {
    background-color: #eeeeee;
    border: 1px solid red;
}
Run Code Online (Sandbox Code Playgroud)

并以这种方式定义列组:

<colgroup span="2"></colgroup>
<colgroup span="12" class="inbound"></colgroup>
<colgroup span="3" class="outbound"></colgroup>       
Run Code Online (Sandbox Code Playgroud)

接下来我尝试了这个CSS:

col.inbound, col.outbound {
    background-color: #eeeeee;
    border: 1px solid red;
}
Run Code Online (Sandbox Code Playgroud)

并以这种方式定义组:

<colgroup
    <col span="2">
    <col span="12" class="inbound">
    <col span="3" class="outbound">            
</colgroup>
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,我的背景颜色都会生效,但不会生效.我能看到的唯一边界是所有单元格之间的细白线(不是整个组周围).

我知道table rules属性但是我不想使用它.如果我能弄清楚如何使用它,我认为CSS会给我更大的灵活性!

html css css-tables

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

何时在 MySql 或 MariaDB 中使用严格模式

我可以找到大量关于严格模式在 MySql 和 MariaDB 中的作用的信息,但没有关于何时使用它的信息。这在一定程度上是常识,但我仍然希望有一些一般准则。例如,也许您:

  • 始终使用严格模式
  • 从不使用严格模式
  • 始终对包含财务数据的表使用严格模式
  • 等等

mysql mariadb

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

这些ZF事件以什么顺序运行?

这是一个Zend Framework问题.

如果我有一个控制器,一个动作助手和一个插件,他们的事件发生在什么顺序?下面我按照我认为发生的顺序列出了我感兴趣的事件.订单是否正确?

  1. 插件,routeStartup()
  2. 插件,routeShutdown()
  3. 插件,dispatchLoopStartup()
  4. 插件,preDispatch()

  5. 动作助手,init()

  6. Action Helper,preDispatch()

  7. 控制器,init()

  8. 控制器,preDispatch()
  9. 控制器,postDispatch()

  10. 动作助手,postDispatch()

  11. 插件,postDispatch()

  12. 插件,dispatchLoopShutdown()

在我看来,当涉及Action Helper和Controller时,init()方法对可以连续运行,然后是一对preDispatch()方法,但我不认为是这种情况.

谢谢你的帮助!

php zend-framework

7
推荐指数
1
解决办法
1393
查看次数

Zend和jQuery - 由许多动作组成的表单

我即将启动Zend中的一些复杂的网页和表单.由于很多这将是我的新领域,我希望你能在我开始之前给我一些关于我的方法的反馈.

我正在使用的信息通常为1-n,例如"1个组织有n个产品".这是我正在研究的这个等式的子部分.从本质上讲,我希望用户能够从单个URL(如mydomain/products/index)添加,查看,更新和删除子项.

请注意,用户可以拥有"成员"或"管理员"权限.

我看到的关键组件是:

  • Zend ACL
  • 一个扩展的ActionStack Action Helper
  • AjaxContext Action Helper
  • jQuery的

这是我看到它如何工作:

  • ACL是早期配置的(作为资源插件或早期运行的前端控制器插件)
  • 请求的操作(例如/ products/index)使用扩展的ActionStack Helper将操作推送到堆栈
  • 扩展的ActionStack Helper在将操作添加到堆栈之前查询ACL(调用isAllowed())

这应该加载初始页面.我认为,对于正式特权的用户,它将包括所有产品的表格,包括"删除"和"编辑"链接的列,以及表格底部的"产品添加"表单.

当用户点击链接时:

  • jQuery处理事件并向特定操作发送XHR请求(例如/ products/add)
  • 特定操作(启用了适当的上下文),返回适当的响应
  • jQuery需要操纵DOM来合并新内容

听起来不错吗?你将做点什么不同的?

我以前没有使用过ActionStack或AjaxContext Helpers,而且对jQuery的使用经验有限.尽管如此,这一切看起来都相当简单.

非常感谢您的想法!

jquery zend-framework

7
推荐指数
1
解决办法
312
查看次数

什么是Zend View过滤器?

什么是Zend View过滤器?我在ZF1文档http://framework.zend.com/manual/1.12/en/zend.view.introduction.htmlZend_View代码中看到了它们,但是我找不到它们的解释.

也许它是支持其他具有过滤器的模板系统?在这种情况下,过滤器在这些模板系统中做了什么?

谢谢!

zend-framework zend-view

7
推荐指数
1
解决办法
1313
查看次数

Zend Framework - 如何从动作帮助器中调用控制器的重定向()

我正在对Action Helper的preDispatch方法进行ACL检查.当它失败时,我想调用动作控制器的_redirect方法,但是我很难做到这一点.

在这篇文章附带的评论中,zend-framework从另一个动作助手中调用动作助手,我看到两个解决方案.在第一个中,控制器从助手访问为$ this - > _ actionController.在第二个中,使用$ this-> getActionController()访问它.

我尝试了以下两种方法:

$this->_actionController->_redirect('/');
$this->getActionController()->_redirect('/');
Run Code Online (Sandbox Code Playgroud)

在任何一种情况下,我得到'方法'_redirect'不存在......'.是否可以限制从动作帮助程序访问哪些控制器方法?

php zend-framework

6
推荐指数
1
解决办法
7714
查看次数

使用PHPUnit和Zend Framework测试异常的问题

当用户在没有正确的post参数的情况下访问/ user/validate时,我的Zend应用程序抛出了一个zend异常.(我得到标准的"发生错误"消息,在我的布局中框住).这是故意的.

我现在正试图用PHPUnit来测试这种行为.这是我的测试:

/**
 * @expectedException Zend_Exception
 */
public function testEmptyUserValidationParametersCauseException() {
    $this->dispatch('/user/validate');
}
Run Code Online (Sandbox Code Playgroud)

当我运行测试时,我收到一条消息,说它失败了,"预期异常Zend_Exception".有任何想法吗?

我在文件中有其他测试工作正常......

谢谢!

php phpunit zend-framework

6
推荐指数
1
解决办法
1199
查看次数

如何使用Zend_Form-> createElement()

我有一个基本用户表单,我为每个用例子类化,即注册,编辑等.

一些表单元素对于所有用例都是通用的,对于这些,我使用表单作为元素工厂,例如$ this-> addElement('text','first_name',array(...)).这很好.

对于仅在某些用例中需要的元素,我在基础表单类中创建它们,但不添加它们,例如$ this-> createElement('text','id',array(...)).当我到达子类本身时,那就是我实际添加这些可选元素的时候.

现在,我认为在子类中我可以使用以下任一方式添加元素:

$this->addElement($this->getElement('id'));
Run Code Online (Sandbox Code Playgroud)

要么

$this->addElement($this->id);
Run Code Online (Sandbox Code Playgroud)

但事实并非如此.我得到一个例外,说我正在尝试addElement(NULL).

我可以获得所需结果的唯一方法是专门将create元素分配给成员变量,然后使用该变量名称.

例如,在基本形式中:

$this->id = $this->createElement('text', 'id', array(...));
Run Code Online (Sandbox Code Playgroud)

然后在子类中:

$this->addElement($this->id);
Run Code Online (Sandbox Code Playgroud)

在我看来,这应该产生一个变量名称冲突.如果createElement没有命名我的元素'id',那么命名它是什么?

编辑

我在父类和子类中都使用init()方法,并且子节点的init()调用父init()作为其第一个任务.

zend-framework zend-form

6
推荐指数
1
解决办法
3965
查看次数

DDD:连接对象是实体对象还是值对象?

我正在开发一个应用程序,用户可以以类似于Twitter的方式互相关注.

在阅读DDD之后,我了解到我的用户是实体对象 - 我使用他们的唯一ID来引用它们.

当一个用户"跟随"另一个用户(即形成连接)时,该关系存储在多对多表中.它的领域包括FollowerID,TargetID,和Status.每个Follower/Target组合只能有两个记录(一个是Active,另一个是Inactive),所以我可以根据它们的属性安全地识别对象.

所以,我认为我的Connection对象是Value Objects,而不是Entity Objects,但我不确定.你能帮我解决这个问题吗?

domain-driven-design

6
推荐指数
1
解决办法
635
查看次数

PHP子类可以改变重写方法的参数吗?

我可以覆盖子类中的PHP方法并更改签名中的参数,如下所示.

class theParent {
  function myMethod($param1) {
    // code here
  }
}

class theChild extends theParent {
  function myMethod($param1, $param2) {
    // code here
  }
}
Run Code Online (Sandbox Code Playgroud)

我测试了它,它工作正常,不会引起任何错误.我的问题是,这是不好的形式?还是OOP的基本原则?

如果父方法被声明为abstract,则子签名不能偏离.据推测,如果您需要强制执行界面的这一方面,这是使用的机制?

php oop

6
推荐指数
1
解决办法
5206
查看次数