Skip to content

Dev.Front FAQ Draft.zh_cn

nothing edited this page Jul 30, 2013 · 9 revisions
  1. 修改一个页面的前端代码。

  2. 如何重新发布一个页面?
    想要重新发布一个修改后的页面首先要发布静态文件,然后清空页面缓存。

  • Asset publish
    它的功能就是把 usr 目录下面的静态文件发布到 www/asset 下面去,这样程序才能引用到修改后的代码。想要重新发布静态文件需要进入后台 Operation->System->Toolkit->Asset publish ,点击需要重新发布的内容之后的publish按钮,这样就完成了重新发布操作。
    建议在开发的时候,直接在 www/asset 目录下改静态代码,改完后再放到相应模块或者主题的 asset 文件夹下面。
  • Cache flush
    为了加快页面加载速度,系统会缓存页面,重新发布之后如果不清空缓存,用户看到的还会是被缓存的那个页面。所以在重新发布之后需要清空页面缓存使修改生效。进入后台 Operation->System->Toolkit->Cache flush ,清空相应页面的缓存,再刷新修改的页面就能看到生效的修改了。 页面缓存设置在, Setting->{Module name}->Page->Edit ,可以对页面进行缓存设置,设置后的,页面就会被缓存,比如,你把系统首页设置半小时缓存,然后去dress up这个页面,刷新首页,不会看到生效后的效果。
  1. bootstrap表单生成。
  • front-end code
<?php
    $form->setAttribute('class', 'form-horizontal');
    echo $this->form()->openTag($form);
    $this->FormElementErrors()->setMessageOpenFormat('<span class="help-inline">')->setMessageCloseString('</span>');
?>
<legend><?php _e('Form title'); ?></legend>
<?php
    $username = $form->get('username');
    echo sprintf('<div class="control-group%s"><label class="control-label">%s</label><div class="controls">%s%s</div></div>',
    $username->getMessages() ? ' error' : '',
    $username->getOption('label'),
    $this->formElement($username),
    $this->formElementErrors($username));
?>
<?php
    $content = $form->get('content');
    $content->setAttributes(array(
            'class' => 'span7',
            'rows' => '6'
    ));
    echo sprintf('<div class="control-group%s"><label class="control-label">%s</label><div class="controls">%s%s</div></div>',
    $content->getMessages() ? ' error' : '',
    $content->getOption('label'),
    $this->formElement($content),
    $this->formElementErrors($content));
?>
<?php
    $submit = $form->get('submit');
    $submit->setAttribute('class', 'btn btn-primary');
    echo sprintf('<div class="controls">%s</div>', $this->formSubmit($submit));
    echo $this->form()->closeTag($form); 
?>
  • php code (src/Form/)
<?php 
    public function init() {
        $this->add(array(
            'name'          => 'username',
            'attributes'    => array(
                'type'  => 'text',
            ),
            'options'       => array(
                'label' => __('Sent to'),
            ),
        ));
        ...
    }
  1. 多主题多模块系统共存。

Clone this wiki locally