【问题标题】:Symfony3 - how can I add a photo using SymfonySymfony3 - 如何使用 Symfony 添加照片
【发布时间】:2016-08-12 16:56:48
【问题描述】:

我正在使用 Symfony3,我想知道如何将照片添加到我的网站或 css 文件中

谁能给我一个详细的解决方案,因为我看到一些人在使用该资产,他们将他们的照片放在 \public\images 中,我不明白它是如何工作的,因为我知道我没有文件夹 \public\images 在资源?

【问题讨论】:

    标签: php css symfony


    【解决方案1】:

    最好的方法是使用Assetic 来管理您的资产(css、js、图像)。您可以将它们存储在目录app/Resources/public 中并在使用命令php bin/console assetic:dump --env=prod --no-debug 部署到生产环境之前将它们转储。

    【讨论】:

    • Symfony 将在具有公共访问权限的 web 目录中生成您的资产,并在您的视图中创建链接。在提供这些资产之前,您可以随意操作这些资产。
    【解决方案2】:

    谢谢我自己找到了解决办法 我将图像存储在 src/nomDuBundle/Resources/public 中,然后执行命令php bin/console assets:install

    将在 /web 中创建一个名为 Bundle 的文件夹,我在那里找到了我的 Bundle ,我在使用此代码的 twig 文件中获取了绝对路径:

    <img src="{{ asset('bundles/nomBundle/images/votreImage.png') }}" />
    

    它适用于对此有问题的人

    【讨论】:

      【解决方案3】:

      AppBundleAssetic documentation 推荐用于集中我们需要包含在 HTML 标头中的所有 ll。

      这就是为什么带有 symfony phar 的新一代 symfony 总是创建一个 AppBundle 吗?无论如何都是有可能的。

      src/AppBundle目录就像指环王的戒指,前台的所有权力都集中在那里。 在其中创建一个 Resources 目录和:imagescssjs...强>子目录。

      src/AppBundle
                   |
                   -- Resources
                                |
                                --public
                                         |
                                         -- images
                                         |
                                         -- css
                                         |      
                                         -- js
                                         |
                                  -- ....
      

      使用 composer 安装资产

      配置 config.yml

      配置应用内核:

      class AppKernel extends Kernel{
      
      public function registerBundles(){
          $bundles = [
                       ...
                       new Symfony\Bundle\AsseticBundle\AsseticBundle(), 
                       ... 
                    ]
        ...
      

      在树枝视图中:

      {% image '@AppBundle/Resources/public/images/example.jpg' %}
          <img src="{{ asset_url }}" alt="Example" />
      {% endimage %}
      

      命令行:

      $ php bin/console assetic:dump --env=prod --no-debug

      命令行生成具有自动名称的目录和图像文件。而且效果很好。

      web
          |
          -- images
          |
          -- css
          |
          -- js
          |
          -- ....    
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-03-19
        • 2016-11-28
        • 1970-01-01
        • 2023-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多