× This forum has been locked. Please submit new Feature Requests on GitHub: github.com/Jensen-Technologies/component-creator-issues/issues

Nested Sets

9 år 8 måneder siden #666 af Yonder Media
Nested Sets blev oprettet af Yonder Media
Having used Component Creator quite extensively, one of the things I find myself having to make over and over again, are nested set models.  For instance, Nested Sets are used in Joomla's native Category component, allowing n-tiered nesting of categories associated with other categories.

In the Table class, this requires changing it from JTable to JTableNested, and including code in the prepareTable function of the model class (an example is shown below:)
protected function prepareTable($table)
{
       jimport('joomla.filter.output');
       $db = JFactory::getDbo();

       // Specify where to insert the new node.
       $parent = @$table->parent_id;
       if (!empty($parent))
       {
           $table->setLocation($parent, 'last-child');
       }
       else
       {
           $rootId = $table->getRootId();
           if ($rootId === false)
           {

               $db = JFactory::getDbo();
               $sql = 'INSERT INTO #__yomo_ussd_article_category'
                   . ' SET parent_id = 0'
                   . ', lft = 0'
                   . ', rgt = 1'
                   . ', level = 0'
                   . ', title = '.$db->quote('root')
                   . ', alias = '.$db->quote('root')
                   . ', access = 1'
                   . ', path = '.$db->quote('')
               ;
               $db->setQuery($sql);
               $db->query();

               $parent = $db->insertid();
               $table->setLocation($parent, 'last-child');
           }
           else
           {
               $table->setLocation($rootId, 'last-child');
           }

       }

       # Check that the node data is valid.
       $table->check();

       # Store the node in the database table.
       $table->store();
}

Additionally, then, this requires changes to the View classes and markup output, to correctly show entries as being nested within each other.  For this, I've borrowed code from Joomla's Category Component to achieve this.

Whilst I can get this all to work, it would be a really cool feature to have this built-in to Component Creator!

Venligst Log på eller Opret en konto for at deltage i samtalen

9 år 8 måneder siden #667 af RIP Graphics
Besvaret af RIP Graphics på emne Nested Sets
+1

Venligst Log på eller Opret en konto for at deltage i samtalen

9 år 7 måneder siden #700 af Pete
Besvaret af Pete på emne Nested Sets
+1

Venligst Log på eller Opret en konto for at deltage i samtalen

9 år 6 måneder siden #771 af Søren Beck Jensen
Besvaret af Søren Beck Jensen på emne Nested Sets
Please note that this relates only to nested sets of custom tables. You can always use the Joomla Category field and create as many nested categories you would like.

Thanks to Brian Teeman for pointing this out.

Søren Beck Jensen
Founder, Component-Creator.com

Venligst Log på eller Opret en konto for at deltage i samtalen

9 år 4 måneder siden #876 af Ilya Protasov
Besvaret af Ilya Protasov på emne Nested Sets
+1

Venligst Log på eller Opret en konto for at deltage i samtalen

9 år 4 måneder siden #883 af Jesper
Besvaret af Jesper på emne Nested Sets
+1 as i sit and could use this right now for something i have to build

Venligst Log på eller Opret en konto for at deltage i samtalen

Tid til at oprette siden: 0.085 sekunder
Leveret af Kunena Forum

Vi we benytter cookies, så vi bedst muligt kan levere vores services. For mere information, se vores