Sonata Admin - change order parent categories
In my webapplication I have the following category structure:
<?php
namespace AppBundleEntity;
use DoctrineORMMapping as ORM;
/**
* Category
*
* @ORMTable(name="category", indexes={@ORMIndex(name="fk_category_category_idx", columns={"parent_category_id"})})
* @ORMEntity(repositoryClass="AppBundleRepositoryCategoryRepository")
*/
class Category
{
/**
* @var string
*
* @ORMColumn(name="name", type="string", length=255, nullable=false)
*/
private $name;
/**
* @var boolean
*
* @ORMColumn(name="enabled", type="boolean", nullable=false)
*/
private $enabled = true;
/**
* @var integer
*
* @ORMColumn(name="id", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var AppBundleEntityCategory
*
* @ORMManyToOne(targetEntity="AppBundleEntityCategory")
* @ORMJoinColumns({
* @ORMJoinColumn(name="parent_category_id", referencedColumnName="id")
* })
*/
private $parentCategory;
}
A category can be a parent category or a subcategory of a parent.
Now I would like to add the possibility to change the order of display of only the parent categories.
How could this easily in Sonata Admin?
php symfony parent categories sonata-admin
add a comment |
In my webapplication I have the following category structure:
<?php
namespace AppBundleEntity;
use DoctrineORMMapping as ORM;
/**
* Category
*
* @ORMTable(name="category", indexes={@ORMIndex(name="fk_category_category_idx", columns={"parent_category_id"})})
* @ORMEntity(repositoryClass="AppBundleRepositoryCategoryRepository")
*/
class Category
{
/**
* @var string
*
* @ORMColumn(name="name", type="string", length=255, nullable=false)
*/
private $name;
/**
* @var boolean
*
* @ORMColumn(name="enabled", type="boolean", nullable=false)
*/
private $enabled = true;
/**
* @var integer
*
* @ORMColumn(name="id", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var AppBundleEntityCategory
*
* @ORMManyToOne(targetEntity="AppBundleEntityCategory")
* @ORMJoinColumns({
* @ORMJoinColumn(name="parent_category_id", referencedColumnName="id")
* })
*/
private $parentCategory;
}
A category can be a parent category or a subcategory of a parent.
Now I would like to add the possibility to change the order of display of only the parent categories.
How could this easily in Sonata Admin?
php symfony parent categories sonata-admin
Maybe you can clarify what you want to achieve? Do you mean you want to add some field that will be used for ordering but edit this only for parent categories? Do you want to edit order that are categories are displayed in admin list? Something else entirely?
– Aurelijus Rozenas
Nov 28 '18 at 8:40
What you are doing is basically a many-to-one self-referencing. You have an exemple with a Category entity on the doctrine documentation (doctrine-project.org/projects/doctrine-orm/en/2.6/reference/…). Now about your issue, can you be a little bit more clear?
– Franck Gamess
Nov 28 '18 at 9:52
add a comment |
In my webapplication I have the following category structure:
<?php
namespace AppBundleEntity;
use DoctrineORMMapping as ORM;
/**
* Category
*
* @ORMTable(name="category", indexes={@ORMIndex(name="fk_category_category_idx", columns={"parent_category_id"})})
* @ORMEntity(repositoryClass="AppBundleRepositoryCategoryRepository")
*/
class Category
{
/**
* @var string
*
* @ORMColumn(name="name", type="string", length=255, nullable=false)
*/
private $name;
/**
* @var boolean
*
* @ORMColumn(name="enabled", type="boolean", nullable=false)
*/
private $enabled = true;
/**
* @var integer
*
* @ORMColumn(name="id", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var AppBundleEntityCategory
*
* @ORMManyToOne(targetEntity="AppBundleEntityCategory")
* @ORMJoinColumns({
* @ORMJoinColumn(name="parent_category_id", referencedColumnName="id")
* })
*/
private $parentCategory;
}
A category can be a parent category or a subcategory of a parent.
Now I would like to add the possibility to change the order of display of only the parent categories.
How could this easily in Sonata Admin?
php symfony parent categories sonata-admin
In my webapplication I have the following category structure:
<?php
namespace AppBundleEntity;
use DoctrineORMMapping as ORM;
/**
* Category
*
* @ORMTable(name="category", indexes={@ORMIndex(name="fk_category_category_idx", columns={"parent_category_id"})})
* @ORMEntity(repositoryClass="AppBundleRepositoryCategoryRepository")
*/
class Category
{
/**
* @var string
*
* @ORMColumn(name="name", type="string", length=255, nullable=false)
*/
private $name;
/**
* @var boolean
*
* @ORMColumn(name="enabled", type="boolean", nullable=false)
*/
private $enabled = true;
/**
* @var integer
*
* @ORMColumn(name="id", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var AppBundleEntityCategory
*
* @ORMManyToOne(targetEntity="AppBundleEntityCategory")
* @ORMJoinColumns({
* @ORMJoinColumn(name="parent_category_id", referencedColumnName="id")
* })
*/
private $parentCategory;
}
A category can be a parent category or a subcategory of a parent.
Now I would like to add the possibility to change the order of display of only the parent categories.
How could this easily in Sonata Admin?
php symfony parent categories sonata-admin
php symfony parent categories sonata-admin
asked Nov 21 '18 at 11:57
nielsvnielsv
6312273156
6312273156
Maybe you can clarify what you want to achieve? Do you mean you want to add some field that will be used for ordering but edit this only for parent categories? Do you want to edit order that are categories are displayed in admin list? Something else entirely?
– Aurelijus Rozenas
Nov 28 '18 at 8:40
What you are doing is basically a many-to-one self-referencing. You have an exemple with a Category entity on the doctrine documentation (doctrine-project.org/projects/doctrine-orm/en/2.6/reference/…). Now about your issue, can you be a little bit more clear?
– Franck Gamess
Nov 28 '18 at 9:52
add a comment |
Maybe you can clarify what you want to achieve? Do you mean you want to add some field that will be used for ordering but edit this only for parent categories? Do you want to edit order that are categories are displayed in admin list? Something else entirely?
– Aurelijus Rozenas
Nov 28 '18 at 8:40
What you are doing is basically a many-to-one self-referencing. You have an exemple with a Category entity on the doctrine documentation (doctrine-project.org/projects/doctrine-orm/en/2.6/reference/…). Now about your issue, can you be a little bit more clear?
– Franck Gamess
Nov 28 '18 at 9:52
Maybe you can clarify what you want to achieve? Do you mean you want to add some field that will be used for ordering but edit this only for parent categories? Do you want to edit order that are categories are displayed in admin list? Something else entirely?
– Aurelijus Rozenas
Nov 28 '18 at 8:40
Maybe you can clarify what you want to achieve? Do you mean you want to add some field that will be used for ordering but edit this only for parent categories? Do you want to edit order that are categories are displayed in admin list? Something else entirely?
– Aurelijus Rozenas
Nov 28 '18 at 8:40
What you are doing is basically a many-to-one self-referencing. You have an exemple with a Category entity on the doctrine documentation (doctrine-project.org/projects/doctrine-orm/en/2.6/reference/…). Now about your issue, can you be a little bit more clear?
– Franck Gamess
Nov 28 '18 at 9:52
What you are doing is basically a many-to-one self-referencing. You have an exemple with a Category entity on the doctrine documentation (doctrine-project.org/projects/doctrine-orm/en/2.6/reference/…). Now about your issue, can you be a little bit more clear?
– Franck Gamess
Nov 28 '18 at 9:52
add a comment |
1 Answer
1
active
oldest
votes
This model is self join with relationship (Many To One).
Even though, you want change order only to the parents category, you need to create one more field as below.
/**
* @var integer
*
* @ORMColumn(name="sort", type="integer", options={"unsigned"=true})
*/
private $sort = 0;
This field will have default sort value of 0
and you can order by DESC
of sort
column.
So higher value parent category will be in top and sorted based on sort values.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53411549%2fsonata-admin-change-order-parent-categories%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
This model is self join with relationship (Many To One).
Even though, you want change order only to the parents category, you need to create one more field as below.
/**
* @var integer
*
* @ORMColumn(name="sort", type="integer", options={"unsigned"=true})
*/
private $sort = 0;
This field will have default sort value of 0
and you can order by DESC
of sort
column.
So higher value parent category will be in top and sorted based on sort values.
add a comment |
This model is self join with relationship (Many To One).
Even though, you want change order only to the parents category, you need to create one more field as below.
/**
* @var integer
*
* @ORMColumn(name="sort", type="integer", options={"unsigned"=true})
*/
private $sort = 0;
This field will have default sort value of 0
and you can order by DESC
of sort
column.
So higher value parent category will be in top and sorted based on sort values.
add a comment |
This model is self join with relationship (Many To One).
Even though, you want change order only to the parents category, you need to create one more field as below.
/**
* @var integer
*
* @ORMColumn(name="sort", type="integer", options={"unsigned"=true})
*/
private $sort = 0;
This field will have default sort value of 0
and you can order by DESC
of sort
column.
So higher value parent category will be in top and sorted based on sort values.
This model is self join with relationship (Many To One).
Even though, you want change order only to the parents category, you need to create one more field as below.
/**
* @var integer
*
* @ORMColumn(name="sort", type="integer", options={"unsigned"=true})
*/
private $sort = 0;
This field will have default sort value of 0
and you can order by DESC
of sort
column.
So higher value parent category will be in top and sorted based on sort values.
answered Nov 29 '18 at 8:31
BalaBala
417411
417411
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53411549%2fsonata-admin-change-order-parent-categories%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Maybe you can clarify what you want to achieve? Do you mean you want to add some field that will be used for ordering but edit this only for parent categories? Do you want to edit order that are categories are displayed in admin list? Something else entirely?
– Aurelijus Rozenas
Nov 28 '18 at 8:40
What you are doing is basically a many-to-one self-referencing. You have an exemple with a Category entity on the doctrine documentation (doctrine-project.org/projects/doctrine-orm/en/2.6/reference/…). Now about your issue, can you be a little bit more clear?
– Franck Gamess
Nov 28 '18 at 9:52