小编Dom*_*s55的帖子

Symfony2在树枝模板中计数

是不是真的不可能在树枝上做简单的数学或我错过了什么?如果我正在显示带有循环的项目,并且我想要总结项目价格我该怎么办?

  {% for item in product %}
                    <tr>

                      <td> <img width="60" src="{{ asset('bundles/mpFrontend/assets/products/4.jpg') }}" alt=""/></td>

                      <td>{{ item.model }}</td>
                      <td>
                        <div class="input-append"><input class="span1" style="max-width:34px" placeholder="1" id="appendedInputButtons" size="16" type="text">
                        <button class="btn" type="button"><i class="icon-minus"></i></button>
                        <button class="btn" type="button"><i class="icon-plus"></i></button>
                        <button class="btn btn-danger" type="button"><a href="{{ path('cart_remove', {'id': key}) }}"><i class="icon-remove icon-white"></i></button>
                        </div>
                      </td>

                      <td>{{ item.price }}</td>
                      <td>{{ item.discount }}</td>
                      <td>{{ item.value }}</td>
                      <td>{{ item.pc }}</td>
                    </tr>

                <tr>
                  <td colspan="6" align="right">Total Price:    </td>
                  <td>{{ item.price|something }}</td>  /// count here
                </tr>

                    {% endfor %}
Run Code Online (Sandbox Code Playgroud)

UPDATE

我的扩展课程:

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

php symfony twig

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

php一个简单的数学任务

我有最简单的数学问题,我无法弄明白(可能整天都在工作累了).这很简单,我循环浏览项目并希望显示最终价格而不需要税等等.问题是我的数学是正确的,但是当我显示价格时,所有项目都具有相同的值(值最后一项).据我所知,每次循环时总变量都在变化,最后一个循环显示最后一个值.如何解决?

public function getTotal($items)
{
    $total;
    foreach($items as $item){
        $total = $item->getPrice() - $item->getDiscount() + $item->getValue();
    }
    return $total;
}
Run Code Online (Sandbox Code Playgroud)

它应该显示:

Item1: 154
Item2: 77
Run Code Online (Sandbox Code Playgroud)

它显示:

Item1:77
Item2:77
Run Code Online (Sandbox Code Playgroud)

php arrays

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

Symfony2 使用不同的语言环境刷新同一页面

因此,在顶部导航栏中,用户可以选择一种语言。有用。这是代码:routing.yml

homepage:
  path: /{_locale}
  defaults: { _controller: MpShopBundle:Homepage:index, "_locale": "es"}
  requirements:
         _locale: es|en
Run Code Online (Sandbox Code Playgroud)

枝条:

<li><a href="{{ path('homepage', {'_locale':'en'}) }}">EN</a></li>
<li><a href="{{ path('homepage', {'_locale':'es'}) }}">ES</a></li>
Run Code Online (Sandbox Code Playgroud)

现在的问题。假设用户将一些产品添加到购物车并访问了购物车页面www.domain.com/cart/shopping-cart。如果他按下其中一个链接,他将被重定向到主索引页面,并且他的语言会发生变化。

如何更改我的代码,以便当用户选择一种语言时,他不会被重定向到新页面,而是使用新的语言环境刷新同一页面。

例如:

当前页面 : www.domain.com/cart/shopping-cart

语言选择后: www.domain.com/cart/shopping-cart/en

并不是: www.domain.com/en

我的所有页面都扩展了导航栏。所以我需要以某种方式获取当前 url 并将 /en 添加到其中。

我得到这样的网址:

{% set currentPath = path(app.request.attributes.get('_route'),
                     app.request.attributes.get('_route_params')) %}
Run Code Online (Sandbox Code Playgroud)

但是如何在树枝中添加 /en 部分?

php jquery symfony

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

Symfony2 Sonata 管理员根据所选值动态更改输入数据

对于我的一个对象,我需要创建一些动态表单渲染...但我不知道如何在 Sonata Admin 中执行此操作。例如,当我创建一个对象时,我有一个字段类型。在此字段中,我选择我的对象的类型。现在,当我选择类型时,我想根据类型显示一个字段。例如,如果我选择类型“轮播”,我想显示一个选择实体库中所有对象的字段。如果我选择类型“产品”,我想显示包含所有可供选择的产品的字段...我怎样才能实现这一点?

现在我有这个:

/**
 * @param FormMapper $formMapper
 */
protected function configureFormFields(FormMapper $formMapper)
{
    $formMapper
        ->with('Module', array(
            'class' => 'col-md-6'
        ))
            ->add('position')
            ->add('type', null, array(
                'attr' => array('class' => 'module_type')
            ))
            ->add('items', 'entity', array(
                'class' => 'ApplicationSonataMediaBundle:Gallery'
            ))
        ->end()
    ;
}
Run Code Online (Sandbox Code Playgroud)

我已经覆盖了编辑模板:

{% extends 'SonataAdminBundle:CRUD:edit.html.twig' %}

{% block javascripts %}
    {{ parent() }}
    <script type="text/javascript">
        $(document).ready(function () {
            $(".module_type").change(function() {

            });

        });
    </script>

{% endblock %}
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,画廊现在是硬编码的..

我现在不知道该怎么做...怎么说如果选择的值是这个,则在字段中使用该实体...问题是在 Sonata 中渲染表单的方式非常复杂...我不知道明白它..

也许我应该使用ajax?但是,当我发送一个值并获得响应时,如何在不刷新的情况下添加字段?

任何帮助表示赞赏。

php forms jquery symfony sonata-admin

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

标签 统计

php ×4

symfony ×3

jquery ×2

arrays ×1

forms ×1

sonata-admin ×1

twig ×1