我正试图从另一个模块栏访问foo中的局部视图.简化的文件结构:
application/
modules/
foo/
index.phtml
bar/
partial.phtml
Run Code Online (Sandbox Code Playgroud)
在index.html中,您将拥有以下代码:
<?php echo $this->partialLoop('../bar/partial.phtml', $this->paginator);
echo $this->paginator; ?>
Run Code Online (Sandbox Code Playgroud)
问题是您实际上无法使用父遍历,因为我收到此错误:
Requested scripts may not include parent directory traversal ("../", "..\" notation)
Run Code Online (Sandbox Code Playgroud)
有没有办法将部分视图包含在我的内容页面中?(或者我做错了吗?)先谢谢.
如何为每个模块自动加载每个表单和模型?请考虑以下文件结构:
application/
modules/
foo/
forms/
Register.php
models/
Account.php
Bootstrap.php
bar/
forms/
Publish.php
models/
Article.php
Bootstrap.php
Bootstrap.php
Run Code Online (Sandbox Code Playgroud)
例如,在foo/Bootstrap.php中,您有以下(非功能)代码:
class Foo_Bootstrap extends Zend_Application_Module_Bootstrap
{
protected function _initAutoLoad()
{
$loader = new Zend_Loader_Autoloader_Resource(array(
'basePath' => APPLICATION_PATH . '/modules/foo',
'namespace' => 'Foo',
));
$loader->addResourceType('form', 'forms', 'Form')
->addResourceType('model', 'models', 'Model');
return $loader;
}
}
Run Code Online (Sandbox Code Playgroud)
基本问题:如何修改引导程序以便它从Foo模块加载每个表单和模型?
额外的问题:是否有可能在每个模块中加载表单和模型的全局自动加载器?如果是这样,怎么样?
编辑(关于该问题的最常见问题):
默认的Zend命名约定用于类.如Bar_Model_Article,Bar_Model_Mapper_Article,Bar_Model_DbTable_Article,Bar_Form_Publish,...(和被放置在各自的文件夹).
它不仅仅是一个没有加载类的模块,而是所有这些模块.
使用带有多个模型,映射器,dbtables和表单的普通无模块应用程序时,使用Zend自动加载器的自动加载类没有问题.
正如@Tim Fountain提到的那样,模块bootstraps没有被运行,这意味着没有任何自动加载发生在Zend中.最后,我发现问题出在我的案例中.我不得不从配置中删除以下行:
bootstrap.path = APPLICATION_PATH …Run Code Online (Sandbox Code Playgroud) 想象一下,您希望使用DTO将任何Serializable类发送到GWT应用程序的客户端:
public class MyDTO implements Serializable {
public Serializable value;
}
Run Code Online (Sandbox Code Playgroud)
此外,任何被用作值的东西都会被检查,如果它在设置之前是Serializable.GWT会在开发控制台中抛出几个警告:
DEBUG: com.example.app.shared.MyDTO.
DEBUG: Analyzing the fields of type 'com.example.app.shared.MyDTO' that qualify for serialization.
DEBUG: private java.io.Serializable value.
DEBUG: java.io.Serializable.
DEBUG: Verifying instantiability.
DEBUG: java.util.ArrayList<? extends java.lang.Object>.
WARN: Checking all subtypes of Object which qualify for serialization.
DEBUG: com.google.gwt.validation.client.impl.PathImpl.
DEBUG: Verifying instantiability.
DEBUG: com.google.gwt.validation.client.impl.PathImpl.
DEBUG: Analyzing the fields of type 'com.google.gwt.validation.client.impl.PathImpl' that qualify for serialization.
WARN: Field 'private final java.util.List<javax.validation.Path.Node> nodes' will not be serialized because it is final. …Run Code Online (Sandbox Code Playgroud) 当前,每次在开发过程中对Node-RED节点进行更改时,都需要停止并启动服务器以应用更改。如果有些微小的变化,甚至只是编辑标签,甚至都需要这样做。
如何在不重新启动服务器的情况下在Node-RED中重新加载节点?可能吗?