小编tob*_*old的帖子

Symfony 2可重复使用的捆绑包

假设我想在Symfony中创建一个博客BlogBundle.但是这个BlogBu​​ndle依赖于其他捆绑包,如FOSUserBundle,KnpPaginator捆绑包,FMBbCodeBundle或者我最终使用的任何捆绑包.这是否意味着我无法在另一个项目中重用BlogBu​​ndle.的最佳实践可重复使用的捆绑 symfony的菜谱章说:

捆绑包不得嵌入第三方PHP库.它应该依赖于标准的Symfony自动加载.

但那究竟是什么意思呢?我不能使用任何不是我编程的东西吗?

如果是这种情况,我必须重新发明轮子,以解决我在开发捆绑包时遇到的最基本问题.例如,我必须提出自己的分页器来分页内容,创建我自己的用户管理器等等.我没有看到一点,因为我会浪费时间来解决已经做得更好的问题比我能做的更多.

或者食谱是否意味着我不能使用任何不在捆绑中的东西.这对我来说更有意义.

真的让我感到恼火的是,没有人真正做过博客或类似的东西,得到了很好的反馈,并且在顶级名单的任何地方都有提及.我知道,Symfony并不意味着有一个开箱即用的解决方案,而且还需要一些编码.我能找到的所有看起来非常受欢迎的捆绑包就是解析BB代码,处理用户管理以及其他难以做到的事情,但绝不会只做一件事.

我希望你明白我的意思,可以帮助我解决问题.提前致谢!

php reusability bundles symfony

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

如何在api平台中实现带有过滤功能的自定义item get端点?

我正在开发一个 symfony/api 平台应用程序,允许用户跟踪体育比赛。我的实体看起来像这样(为简洁起见缩短):

用户.php

class User implements UserInterface
{
    // ...

    /**
     * @ORM\OneToMany(targetEntity=MatchPlayer::class, mappedBy="user")
     */
    private $matches;

    // ...
}
Run Code Online (Sandbox Code Playgroud)

MatchPlayer.php

class MatchPlayer
{
    // ...

    /**
     * @ORM\ManyToOne(targetEntity=User::class, inversedBy="matches")
     * @ORM\JoinColumn(onDelete="SET NULL")
     */
    private $user;

    /**
     * @ORM\ManyToOne(targetEntity=Match::class, inversedBy="players")
     */
    private $playedMatch;

    /**
     * @ORM\ManyToOne(targetEntity=Position::class, inversedBy="matches")
     */
    private $position;

    // ...
}
Run Code Online (Sandbox Code Playgroud)

匹配.php

class Match
{
    // ...

    /**
     * @ORM\Column(type="smallint")
     * @Groups({"match:read"})
     */
    private $outcome;

    /**
     * @ORM\ManyToOne(targetEntity=Sport::class, inversedBy="matches")
     */
    private $sport;

    /**
     * @ORM\OneToMany(targetEntity=MatchPlayer::class, mappedBy="playedMatch", cascade={"persist", …
Run Code Online (Sandbox Code Playgroud)

php api endpoint symfony api-platform.com

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

标签 统计

php ×2

symfony ×2

api ×1

api-platform.com ×1

bundles ×1

endpoint ×1

reusability ×1