Comments (6)
I agree with @mbontemps, it's not intuitive.
I'm not sure about the semantic thing. A filter transforms or adapts a value that already has a "meaning" (a date for instance).
Here, 'main' is used just to find something, it's not a value intended for display.
It has its place as a function argument => "Go find my menu named 'main' and render it".
from knpmenu.
It has never been a tag. It was a function: {{ knp_menu(menu) }}
in the previous version.
And a filter is more semantic than a function for this as it transform the input into another value (this is also the reason why the date filter is a filter in Twig, not a function)
from knpmenu.
the filter accept 2 things: the menu object, or the name for the menu in the provider.
from knpmenu.
Still, IMO perhaps both filter and method should be proposed. The filter transforms a menu object, and the method takes a menu name.
from knpmenu.
I don't think I like having both a filter and a function (which behave differently), but I think that @benjamindulau is perfectly logical: filtering the menu object makes sense, but filter a string into a full menu just doesn't feel right.
Also, I think a function is more consistent with how the Symfony form framework works, and it's also consistent with how you render a menu in PHP (e.g. you pass the menu into a renderer).
So, +1 for making it a function again - I just think it's a little more understandable.
from knpmenu.
Thanks @stof!
from knpmenu.
Related Issues (20)
- Allow Twig 3 HOT 3
- LazyProvider must be compatible with ... HOT 4
- Documentation HOT 1
- Label with hierarchical numbering 1.2.2.1
- Using pattern and route together HOT 7
- Apply "currentClass" in link in item HOT 2
- Change description HOT 4
- Add template for boostrap 4 etc.? HOT 3
- request attribute voter HOT 3
- Drop support for PHP 7.3? HOT 3
- Change \Knp\Menu\MenuFactory::getExtension to protected instead of private! HOT 4
- Matcher::addVoter() method undefined HOT 3
- Suggesting some configurations
- Add support for symfony 6.1 HOT 2
- What about PHP8.1 support? HOT 2
- Drop PHP 7 HOT 1
- Add ability to add items to menus in a sorted way HOT 1
- Document ESI usage
- Support Symfony 7
- getting the actual label, not the label ?? name HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from knpmenu.