github.com/rpdict/ponzu@v0.10.1-0.20190226054626-477f29d6bf5e/docs/build/CLI/Generating-References/index.html (about)

     1  
     2  <!DOCTYPE html>
     3  <html lang="en" class="no-js">
     4    <head>
     5      
     6        <meta charset="utf-8">
     7        <meta name="viewport" content="width=device-width,initial-scale=1">
     8        
     9        
    10        
    11        
    12          <link rel="shortcut icon" href="../../assets/images/favicon.png">
    13        
    14        <meta name="generator" content="mkdocs-0.16.3, mkdocs-material-1.6.1">
    15      
    16      
    17        
    18          <title>How to Generate References using Ponzu CLI</title>
    19        
    20      
    21      
    22        <script src="../../assets/javascripts/modernizr-56ade86843.js"></script>
    23      
    24      
    25        <link rel="stylesheet" href="../../assets/stylesheets/application-4d0d3f2fbf.css">
    26        
    27          <link rel="stylesheet" href="../../assets/stylesheets/application-f78e5cb881.palette.css">
    28        
    29      
    30      
    31        
    32          
    33          
    34          
    35          <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
    36          <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
    37        
    38        <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
    39      
    40      
    41      
    42    </head>
    43    
    44    
    45    
    46    
    47      <body data-md-color-primary="grey" data-md-color-accent="light-blue">
    48    
    49      <svg class="md-svg">
    50        <defs>
    51          
    52          
    53            <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448" viewBox="0 0 416 448" id="github"><path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19T128 352t-18.125-8.5-10.75-19T96 304t3.125-20.5 10.75-19T128 256t18.125 8.5 10.75 19T160 304zm160 0q0 10-3.125 20.5t-10.75 19T288 352t-18.125-8.5-10.75-19T256 304t3.125-20.5 10.75-19T288 256t18.125 8.5 10.75 19T320 304zm40 0q0-30-17.25-51T296 232q-10.25 0-48.75 5.25Q229.5 240 208 240t-39.25-2.75Q130.75 232 120 232q-29.5 0-46.75 21T56 304q0 22 8 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0 37.25-1.75t35-7.375 30.5-15 20.25-25.75T360 304zm56-44q0 51.75-15.25 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5T212 416q-19.5 0-35.5-.75t-36.875-3.125-38.125-7.5-34.25-12.875T37 371.5t-21.5-28.75Q0 312 0 260q0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25 30.875Q171.5 96 212 96q37 0 70 8 26.25-20.5 46.75-30.25T376 64q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34 99.5z"/></svg>
    54          
    55        </defs>
    56      </svg>
    57      <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer">
    58      <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search">
    59      <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
    60      
    61        <header class="md-header" data-md-component="header">
    62    <nav class="md-header-nav md-grid">
    63      <div class="md-flex">
    64        <div class="md-flex__cell md-flex__cell--shrink">
    65          
    66            <a href="../.." title="Ponzu" class="md-logo md-header-nav__button">
    67              <img src="../../images/logo.png" width="24" height="24">
    68            </a>
    69          
    70        </div>
    71        <div class="md-flex__cell md-flex__cell--shrink">
    72          <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
    73        </div>
    74        <div class="md-flex__cell md-flex__cell--stretch">
    75          <span class="md-flex__ellipsis md-header-nav__title">
    76            
    77              
    78                
    79                  <span class="md-header-nav__parent">
    80                    CLI
    81                  </span>
    82                
    83              
    84              Generating References
    85            
    86          </span>
    87        </div>
    88        <div class="md-flex__cell md-flex__cell--shrink">
    89          
    90            <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
    91            
    92  <div class="md-search" data-md-component="search">
    93    <label class="md-search__overlay" for="search"></label>
    94    <div class="md-search__inner">
    95      <form class="md-search__form" name="search">
    96        <input type="text" class="md-search__input" name="query" required placeholder="Search" accesskey="s" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query">
    97        <label class="md-icon md-search__icon" for="search"></label>
    98        <button type="reset" class="md-icon md-search__icon" data-md-component="reset">close</button>
    99      </form>
   100      <div class="md-search__output">
   101        <div class="md-search__scrollwrap" data-md-scrollfix>
   102          <div class="md-search-result" data-md-component="result">
   103            <div class="md-search-result__meta" data-md-lang-result-none="No matching documents" data-md-lang-result-one="1 matching document" data-md-lang-result-other="# matching documents">
   104              Type to start searching
   105            </div>
   106            <ol class="md-search-result__list"></ol>
   107          </div>
   108        </div>
   109      </div>
   110    </div>
   111  </div>
   112          
   113        </div>
   114        <div class="md-flex__cell md-flex__cell--shrink">
   115          <div class="md-header-nav__source">
   116            
   117              
   118  
   119  
   120    
   121  
   122  
   123    <a href="https://github.com/rpdict/ponzu" title="Go to repository" class="md-source" data-md-source="github">
   124      
   125        <div class="md-source__icon">
   126          <svg viewBox="0 0 24 24" width="24" height="24">
   127            <use xlink:href="#github" width="24" height="24"></use>
   128          </svg>
   129        </div>
   130      
   131      <div class="md-source__repository">
   132        ponzu-cms/ponzu
   133      </div>
   134    </a>
   135  
   136            
   137          </div>
   138        </div>
   139      </div>
   140    </nav>
   141  </header>
   142      
   143      <div class="md-container">
   144        
   145        
   146        <main class="md-main">
   147          <div class="md-main__inner md-grid" data-md-component="container">
   148            
   149              
   150                <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
   151                  <div class="md-sidebar__scrollwrap">
   152                    <div class="md-sidebar__inner">
   153                      <nav class="md-nav md-nav--primary" data-md-level="0">
   154    <label class="md-nav__title md-nav__title--site" for="drawer">
   155      
   156        <i class="md-logo md-nav__button">
   157          <img src="../../images/logo.png">
   158        </i>
   159      
   160      Ponzu
   161    </label>
   162    
   163      <div class="md-nav__source">
   164        
   165  
   166  
   167    
   168  
   169  
   170    <a href="https://github.com/rpdict/ponzu" title="Go to repository" class="md-source" data-md-source="github">
   171      
   172        <div class="md-source__icon">
   173          <svg viewBox="0 0 24 24" width="24" height="24">
   174            <use xlink:href="#github" width="24" height="24"></use>
   175          </svg>
   176        </div>
   177      
   178      <div class="md-source__repository">
   179        ponzu-cms/ponzu
   180      </div>
   181    </a>
   182  
   183      </div>
   184    
   185    <ul class="md-nav__list" data-md-scrollfix>
   186      
   187        
   188        
   189        
   190  
   191  
   192    <li class="md-nav__item">
   193      <a href="../.." title="Home" class="md-nav__link">
   194        Home
   195      </a>
   196    </li>
   197  
   198      
   199        
   200        
   201        
   202  
   203    
   204  
   205  
   206    <li class="md-nav__item md-nav__item--active md-nav__item--nested">
   207      
   208        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2" checked>
   209      
   210      <label class="md-nav__link" for="nav-2">
   211        CLI
   212      </label>
   213      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   214        <label class="md-nav__title" for="nav-2">
   215          CLI
   216        </label>
   217        <ul class="md-nav__list" data-md-scrollfix>
   218          
   219          
   220            
   221            
   222            
   223  
   224  
   225    <li class="md-nav__item">
   226      <a href="../General-Usage/" title="General Usage" class="md-nav__link">
   227        General Usage
   228      </a>
   229    </li>
   230  
   231          
   232            
   233            
   234            
   235  
   236    
   237  
   238  
   239    <li class="md-nav__item md-nav__item--active">
   240      
   241      <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
   242      
   243      
   244        <label class="md-nav__link md-nav__link--active" for="toc">
   245          Generating References
   246        </label>
   247      
   248      <a href="./" title="Generating References" class="md-nav__link md-nav__link--active">
   249        Generating References
   250      </a>
   251      
   252        
   253  <nav class="md-nav md-nav--secondary">
   254    
   255    
   256    
   257      <label class="md-nav__title" for="toc">Table of contents</label>
   258      <ul class="md-nav__list" data-md-scrollfix>
   259        
   260          <li class="md-nav__item">
   261    <a href="#syntax" title="Syntax" class="md-nav__link">
   262      Syntax
   263    </a>
   264    
   265      <nav class="md-nav">
   266        <ul class="md-nav__list">
   267          
   268            <li class="md-nav__item">
   269    <a href="#_1" title="@" class="md-nav__link">
   270      @
   271    </a>
   272    
   273  </li>
   274          
   275            <li class="md-nav__item">
   276    <a href="#_2" title="[]" class="md-nav__link">
   277      []
   278    </a>
   279    
   280  </li>
   281          
   282            <li class="md-nav__item">
   283    <a href="#arg1arg2argn" title=",arg1,arg2,argN" class="md-nav__link">
   284      ,arg1,arg2,argN
   285    </a>
   286    
   287  </li>
   288          
   289            <li class="md-nav__item">
   290    <a href="#example" title="Example" class="md-nav__link">
   291      Example
   292    </a>
   293    
   294  </li>
   295          
   296        </ul>
   297      </nav>
   298    
   299  </li>
   300        
   301        
   302        
   303      </ul>
   304    
   305  </nav>
   306      
   307    </li>
   308  
   309          
   310        </ul>
   311      </nav>
   312    </li>
   313  
   314      
   315        
   316        
   317        
   318  
   319  
   320    <li class="md-nav__item md-nav__item--nested">
   321      
   322        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
   323      
   324      <label class="md-nav__link" for="nav-3">
   325        Content
   326      </label>
   327      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   328        <label class="md-nav__title" for="nav-3">
   329          Content
   330        </label>
   331        <ul class="md-nav__list" data-md-scrollfix>
   332          
   333          
   334            
   335            
   336            
   337  
   338  
   339    <li class="md-nav__item">
   340      <a href="../../Content/An-Overview/" title="An Overview" class="md-nav__link">
   341        An Overview
   342      </a>
   343    </li>
   344  
   345          
   346            
   347            
   348            
   349  
   350  
   351    <li class="md-nav__item">
   352      <a href="../../Content/Extending-Content/" title="Extending Content" class="md-nav__link">
   353        Extending Content
   354      </a>
   355    </li>
   356  
   357          
   358        </ul>
   359      </nav>
   360    </li>
   361  
   362      
   363        
   364        
   365        
   366  
   367  
   368    <li class="md-nav__item md-nav__item--nested">
   369      
   370        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
   371      
   372      <label class="md-nav__link" for="nav-4">
   373        Form Fields
   374      </label>
   375      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   376        <label class="md-nav__title" for="nav-4">
   377          Form Fields
   378        </label>
   379        <ul class="md-nav__list" data-md-scrollfix>
   380          
   381          
   382            
   383            
   384            
   385  
   386  
   387    <li class="md-nav__item">
   388      <a href="../../Form-Fields/HTML-Inputs/" title="HTML Inputs" class="md-nav__link">
   389        HTML Inputs
   390      </a>
   391    </li>
   392  
   393          
   394        </ul>
   395      </nav>
   396    </li>
   397  
   398      
   399        
   400        
   401        
   402  
   403  
   404    <li class="md-nav__item md-nav__item--nested">
   405      
   406        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
   407      
   408      <label class="md-nav__link" for="nav-5">
   409        HTTP APIs
   410      </label>
   411      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   412        <label class="md-nav__title" for="nav-5">
   413          HTTP APIs
   414        </label>
   415        <ul class="md-nav__list" data-md-scrollfix>
   416          
   417          
   418            
   419            
   420            
   421  
   422  
   423    <li class="md-nav__item">
   424      <a href="../../HTTP-APIs/Content/" title="Content" class="md-nav__link">
   425        Content
   426      </a>
   427    </li>
   428  
   429          
   430            
   431            
   432            
   433  
   434  
   435    <li class="md-nav__item">
   436      <a href="../../HTTP-APIs/File-Metadata/" title="File Metadata" class="md-nav__link">
   437        File Metadata
   438      </a>
   439    </li>
   440  
   441          
   442            
   443            
   444            
   445  
   446  
   447    <li class="md-nav__item">
   448      <a href="../../HTTP-APIs/Search/" title="Search" class="md-nav__link">
   449        Search
   450      </a>
   451    </li>
   452  
   453          
   454        </ul>
   455      </nav>
   456    </li>
   457  
   458      
   459        
   460        
   461        
   462  
   463  
   464    <li class="md-nav__item md-nav__item--nested">
   465      
   466        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-6" type="checkbox" id="nav-6">
   467      
   468      <label class="md-nav__link" for="nav-6">
   469        Interfaces
   470      </label>
   471      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   472        <label class="md-nav__title" for="nav-6">
   473          Interfaces
   474        </label>
   475        <ul class="md-nav__list" data-md-scrollfix>
   476          
   477          
   478            
   479            
   480            
   481  
   482  
   483    <li class="md-nav__item">
   484      <a href="../../Interfaces/API/" title="API" class="md-nav__link">
   485        API
   486      </a>
   487    </li>
   488  
   489          
   490            
   491            
   492            
   493  
   494  
   495    <li class="md-nav__item">
   496      <a href="../../Interfaces/Editor/" title="Editor" class="md-nav__link">
   497        Editor
   498      </a>
   499    </li>
   500  
   501          
   502            
   503            
   504            
   505  
   506  
   507    <li class="md-nav__item">
   508      <a href="../../Interfaces/Format/" title="Format" class="md-nav__link">
   509        Format
   510      </a>
   511    </li>
   512  
   513          
   514            
   515            
   516            
   517  
   518  
   519    <li class="md-nav__item">
   520      <a href="../../Interfaces/Item/" title="Item" class="md-nav__link">
   521        Item
   522      </a>
   523    </li>
   524  
   525          
   526            
   527            
   528            
   529  
   530  
   531    <li class="md-nav__item">
   532      <a href="../../Interfaces/Search/" title="Search" class="md-nav__link">
   533        Search
   534      </a>
   535    </li>
   536  
   537          
   538        </ul>
   539      </nav>
   540    </li>
   541  
   542      
   543        
   544        
   545        
   546  
   547  
   548    <li class="md-nav__item md-nav__item--nested">
   549      
   550        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-7" type="checkbox" id="nav-7">
   551      
   552      <label class="md-nav__link" for="nav-7">
   553        Ponzu Addons
   554      </label>
   555      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   556        <label class="md-nav__title" for="nav-7">
   557          Ponzu Addons
   558        </label>
   559        <ul class="md-nav__list" data-md-scrollfix>
   560          
   561          
   562            
   563            
   564            
   565  
   566  
   567    <li class="md-nav__item">
   568      <a href="../../Ponzu-Addons/Creating-Addons/" title="Creating Addons" class="md-nav__link">
   569        Creating Addons
   570      </a>
   571    </li>
   572  
   573          
   574            
   575            
   576            
   577  
   578  
   579    <li class="md-nav__item">
   580      <a href="../../Ponzu-Addons/Using-Addons/" title="Using Addons" class="md-nav__link">
   581        Using Addons
   582      </a>
   583    </li>
   584  
   585          
   586        </ul>
   587      </nav>
   588    </li>
   589  
   590      
   591        
   592        
   593        
   594  
   595  
   596    <li class="md-nav__item md-nav__item--nested">
   597      
   598        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
   599      
   600      <label class="md-nav__link" for="nav-8">
   601        Quickstart
   602      </label>
   603      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   604        <label class="md-nav__title" for="nav-8">
   605          Quickstart
   606        </label>
   607        <ul class="md-nav__list" data-md-scrollfix>
   608          
   609          
   610            
   611            
   612            
   613  
   614  
   615    <li class="md-nav__item">
   616      <a href="../../Quickstart/Overview/" title="Overview" class="md-nav__link">
   617        Overview
   618      </a>
   619    </li>
   620  
   621          
   622        </ul>
   623      </nav>
   624    </li>
   625  
   626      
   627        
   628        
   629        
   630  
   631  
   632    <li class="md-nav__item md-nav__item--nested">
   633      
   634        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-9" type="checkbox" id="nav-9">
   635      
   636      <label class="md-nav__link" for="nav-9">
   637        References
   638      </label>
   639      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   640        <label class="md-nav__title" for="nav-9">
   641          References
   642        </label>
   643        <ul class="md-nav__list" data-md-scrollfix>
   644          
   645          
   646            
   647            
   648            
   649  
   650  
   651    <li class="md-nav__item">
   652      <a href="../../References/Overview/" title="Overview" class="md-nav__link">
   653        Overview
   654      </a>
   655    </li>
   656  
   657          
   658        </ul>
   659      </nav>
   660    </li>
   661  
   662      
   663        
   664        
   665        
   666  
   667  
   668    <li class="md-nav__item md-nav__item--nested">
   669      
   670        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-10" type="checkbox" id="nav-10">
   671      
   672      <label class="md-nav__link" for="nav-10">
   673        Running Backups
   674      </label>
   675      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   676        <label class="md-nav__title" for="nav-10">
   677          Running Backups
   678        </label>
   679        <ul class="md-nav__list" data-md-scrollfix>
   680          
   681          
   682            
   683            
   684            
   685  
   686  
   687    <li class="md-nav__item">
   688      <a href="../../Running-Backups/Backups/" title="Backups" class="md-nav__link">
   689        Backups
   690      </a>
   691    </li>
   692  
   693          
   694        </ul>
   695      </nav>
   696    </li>
   697  
   698      
   699        
   700        
   701        
   702  
   703  
   704    <li class="md-nav__item md-nav__item--nested">
   705      
   706        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-11" type="checkbox" id="nav-11">
   707      
   708      <label class="md-nav__link" for="nav-11">
   709        System Configuration
   710      </label>
   711      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   712        <label class="md-nav__title" for="nav-11">
   713          System Configuration
   714        </label>
   715        <ul class="md-nav__list" data-md-scrollfix>
   716          
   717          
   718            
   719            
   720            
   721  
   722  
   723    <li class="md-nav__item">
   724      <a href="../../System-Configuration/Settings/" title="Settings" class="md-nav__link">
   725        Settings
   726      </a>
   727    </li>
   728  
   729          
   730        </ul>
   731      </nav>
   732    </li>
   733  
   734      
   735        
   736        
   737        
   738  
   739  
   740    <li class="md-nav__item md-nav__item--nested">
   741      
   742        <input class="md-toggle md-nav__toggle" data-md-toggle="nav-12" type="checkbox" id="nav-12">
   743      
   744      <label class="md-nav__link" for="nav-12">
   745        System Deployment
   746      </label>
   747      <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
   748        <label class="md-nav__title" for="nav-12">
   749          System Deployment
   750        </label>
   751        <ul class="md-nav__list" data-md-scrollfix>
   752          
   753          
   754            
   755            
   756            
   757  
   758  
   759    <li class="md-nav__item">
   760      <a href="../../System-Deployment/Docker/" title="Docker" class="md-nav__link">
   761        Docker
   762      </a>
   763    </li>
   764  
   765          
   766            
   767            
   768            
   769  
   770  
   771    <li class="md-nav__item">
   772      <a href="../../System-Deployment/SysV-Style/" title="SysV Style" class="md-nav__link">
   773        SysV Style
   774      </a>
   775    </li>
   776  
   777          
   778        </ul>
   779      </nav>
   780    </li>
   781  
   782      
   783    </ul>
   784  </nav>
   785                    </div>
   786                  </div>
   787                </div>
   788              
   789              
   790                <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
   791                  <div class="md-sidebar__scrollwrap">
   792                    <div class="md-sidebar__inner">
   793                      
   794  <nav class="md-nav md-nav--secondary">
   795    
   796    
   797    
   798      <label class="md-nav__title" for="toc">Table of contents</label>
   799      <ul class="md-nav__list" data-md-scrollfix>
   800        
   801          <li class="md-nav__item">
   802    <a href="#syntax" title="Syntax" class="md-nav__link">
   803      Syntax
   804    </a>
   805    
   806      <nav class="md-nav">
   807        <ul class="md-nav__list">
   808          
   809            <li class="md-nav__item">
   810    <a href="#_1" title="@" class="md-nav__link">
   811      @
   812    </a>
   813    
   814  </li>
   815          
   816            <li class="md-nav__item">
   817    <a href="#_2" title="[]" class="md-nav__link">
   818      []
   819    </a>
   820    
   821  </li>
   822          
   823            <li class="md-nav__item">
   824    <a href="#arg1arg2argn" title=",arg1,arg2,argN" class="md-nav__link">
   825      ,arg1,arg2,argN
   826    </a>
   827    
   828  </li>
   829          
   830            <li class="md-nav__item">
   831    <a href="#example" title="Example" class="md-nav__link">
   832      Example
   833    </a>
   834    
   835  </li>
   836          
   837        </ul>
   838      </nav>
   839    
   840  </li>
   841        
   842        
   843        
   844      </ul>
   845    
   846  </nav>
   847                    </div>
   848                  </div>
   849                </div>
   850              
   851            
   852            <div class="md-content">
   853              <article class="md-content__inner md-typeset">
   854                
   855                  
   856                  
   857                    <h1>Generating References</h1>
   858                  
   859                  <p>In Ponzu, users make connections between Content types using references. In order 
   860  to use the CLI to generate these references, a slightly different syntax is required. 
   861  In all cases, the Content type you wish to reference does not need to exist prior
   862  to the "parent" type referencing it at generate-time, but in the following examples,
   863  the referenced "child" type will be shown before the parent type for clarity.</p>
   864  <h2 id="syntax">Syntax<a class="headerlink" href="#syntax" title="Permanent link">&para;</a></h2>
   865  <h3 id="_1">@<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3>
   866  <p>The <strong>@</strong> symbol is used to declare that the following name is a reference. The 
   867  CLI will take care to parse the name and treat it as a Content type to which the 
   868  current type refers.</p>
   869  <h3 id="_2">[]<a class="headerlink" href="#_2" title="Permanent link">&para;</a></h3>
   870  <p>The <code>[]</code>, which if used, is always in front of the <strong>@</strong> symbol. It signifies 
   871  that the reference type is a slice or a collection of references. When <code>[]</code>
   872  is used, the CLI will automatically generate a <code>reference.SelectRepeater()</code> view 
   873  for you.</p>
   874  <h3 id="arg1arg2argn">,arg1,arg2,argN<a class="headerlink" href="#arg1arg2argn" title="Permanent link">&para;</a></h3>
   875  <p>Immediately following the reference name (after the @ symbol), users may optionally
   876  pass arguments to specify how the reference is displayed in the parent type's
   877  editor. References are included in the parent types editor as a dropdown menu, with
   878  each possible reference as an option. These arguments define what goes inside the
   879  <code>&lt;option&gt;&lt;/option&gt;</code> text node, as would be seen by an Admin.</p>
   880  <p>The arguments must be valid JSON struct tag names from the reference type's fields. 
   881  Notice in the example below, the <code>title</code> and <code>price</code> are formatted exactly as they 
   882  were in the generate command for the <code>product</code> type.</p>
   883  <hr />
   884  <h3 id="_3"><a class="headerlink" href="#_3" title="Permanent link">&para;</a></h3>
   885  <h5 id="example">Example<a class="headerlink" href="#example" title="Permanent link">&para;</a></h5>
   886  <div class="codehilite"><pre><span></span>$ ponzu gen content product title:string price:int description:string:textarea
   887  $ ponzu gen content catalog year:int products:<span class="s2">&quot;[]@product&quot;</span>,title,price
   888  </pre></div>
   889  
   890  
   891  <p>The commands above output the following. For demonstration, we will omit the full
   892  code generated for the <code>Product</code>, since the reference is in the <code>Catalog</code> type.</p>
   893  <div class="codehilite"><pre><span></span><span class="c1">// content/product.go</span>
   894  <span class="kn">package</span> <span class="nx">content</span>
   895  <span class="o">...</span>
   896  
   897  <span class="kd">type</span> <span class="nx">Product</span> <span class="kd">struct</span> <span class="p">{</span>
   898      <span class="nx">item</span><span class="p">.</span><span class="nx">Item</span>
   899  
   900      <span class="nx">Title</span>       <span class="kt">string</span> <span class="s">`json:&quot;title&quot;`</span>
   901      <span class="nx">Price</span>       <span class="kt">int</span>    <span class="s">`json:&quot;price&quot;`</span>
   902      <span class="nx">Description</span> <span class="kt">string</span> <span class="s">`json:&quot;description&quot;`</span>
   903  <span class="p">}</span>
   904  
   905  <span class="o">...</span>
   906  </pre></div>
   907  
   908  
   909  <div class="codehilite"><pre><span></span><span class="kn">package</span> <span class="nx">content</span>
   910  
   911  <span class="kn">import</span> <span class="p">(</span>
   912      <span class="s">&quot;fmt&quot;</span>
   913  
   914      <span class="s">&quot;github.com/bosssauce/reference&quot;</span>
   915  
   916      <span class="s">&quot;github.com/rpdict/ponzu/management/editor&quot;</span>
   917      <span class="s">&quot;github.com/rpdict/ponzu/system/item&quot;</span>
   918  <span class="p">)</span>
   919  
   920  <span class="kd">type</span> <span class="nx">Catalog</span> <span class="kd">struct</span> <span class="p">{</span>
   921      <span class="nx">item</span><span class="p">.</span><span class="nx">Item</span>
   922  
   923      <span class="nx">Year</span>     <span class="kt">int</span>      <span class="s">`json:&quot;year&quot;`</span>
   924      <span class="c1">// all references are stored as []string or string types</span>
   925      <span class="nx">Products</span> <span class="p">[]</span><span class="kt">string</span> <span class="s">`json:&quot;products&quot;`</span> 
   926  <span class="p">}</span>
   927  
   928  <span class="kd">func</span> <span class="p">(</span><span class="nx">c</span> <span class="o">*</span><span class="nx">Catalog</span><span class="p">)</span> <span class="nx">MarshalEditor</span><span class="p">()</span> <span class="p">([]</span><span class="kt">byte</span><span class="p">,</span> <span class="kt">error</span><span class="p">)</span> <span class="p">{</span>
   929      <span class="nx">view</span><span class="p">,</span> <span class="nx">err</span> <span class="o">:=</span> <span class="nx">editor</span><span class="p">.</span><span class="nx">Form</span><span class="p">(</span><span class="nx">c</span><span class="p">,</span>
   930          <span class="nx">editor</span><span class="p">.</span><span class="nx">Field</span><span class="p">{</span>
   931              <span class="nx">View</span><span class="p">:</span> <span class="nx">editor</span><span class="p">.</span><span class="nx">Input</span><span class="p">(</span><span class="s">&quot;Year&quot;</span><span class="p">,</span> <span class="nx">c</span><span class="p">,</span> <span class="kd">map</span><span class="p">[</span><span class="kt">string</span><span class="p">]</span><span class="kt">string</span><span class="p">{</span>
   932                  <span class="s">&quot;label&quot;</span><span class="p">:</span>       <span class="s">&quot;Year&quot;</span><span class="p">,</span>
   933                  <span class="s">&quot;type&quot;</span><span class="p">:</span>        <span class="s">&quot;text&quot;</span><span class="p">,</span>
   934                  <span class="s">&quot;placeholder&quot;</span><span class="p">:</span> <span class="s">&quot;Enter the Year here&quot;</span><span class="p">,</span>
   935              <span class="p">}),</span>
   936          <span class="p">},</span>
   937          <span class="nx">editor</span><span class="p">.</span><span class="nx">Field</span><span class="p">{</span>
   938              <span class="c1">// reference.SelectRepeater since []@product was used</span>
   939              <span class="nx">View</span><span class="p">:</span> <span class="nx">reference</span><span class="p">.</span><span class="nx">SelectRepeater</span><span class="p">(</span><span class="s">&quot;Products&quot;</span><span class="p">,</span> <span class="nx">c</span><span class="p">,</span> <span class="kd">map</span><span class="p">[</span><span class="kt">string</span><span class="p">]</span><span class="kt">string</span><span class="p">{</span>
   940                  <span class="s">&quot;label&quot;</span><span class="p">:</span> <span class="s">&quot;Products&quot;</span><span class="p">,</span>
   941              <span class="p">},</span>
   942                  <span class="s">&quot;Product&quot;</span><span class="p">,</span> <span class="c1">// generated from @product</span>
   943                  <span class="s">`{{ .title }} {{ .price }} `</span><span class="p">,</span> <span class="c1">// generated from ,title,price args</span>
   944              <span class="p">),</span>
   945          <span class="p">},</span>
   946      <span class="p">)</span>
   947  
   948      <span class="k">if</span> <span class="nx">err</span> <span class="o">!=</span> <span class="kc">nil</span> <span class="p">{</span>
   949          <span class="k">return</span> <span class="kc">nil</span><span class="p">,</span> <span class="nx">fmt</span><span class="p">.</span><span class="nx">Errorf</span><span class="p">(</span><span class="s">&quot;Failed to render Catalog editor view: %s&quot;</span><span class="p">,</span> <span class="nx">err</span><span class="p">.</span><span class="nx">Error</span><span class="p">())</span>
   950      <span class="p">}</span>
   951  
   952      <span class="k">return</span> <span class="nx">view</span><span class="p">,</span> <span class="kc">nil</span>
   953  <span class="p">}</span>
   954  
   955  <span class="kd">func</span> <span class="nx">init</span><span class="p">()</span> <span class="p">{</span>
   956      <span class="nx">item</span><span class="p">.</span><span class="nx">Types</span><span class="p">[</span><span class="s">&quot;Catalog&quot;</span><span class="p">]</span> <span class="p">=</span> <span class="kd">func</span><span class="p">()</span> <span class="kd">interface</span><span class="p">{}</span> <span class="p">{</span> <span class="k">return</span> <span class="nb">new</span><span class="p">(</span><span class="nx">Catalog</span><span class="p">)</span> <span class="p">}</span>
   957  <span class="p">}</span>
   958  </pre></div>
   959  
   960  
   961  <p><strong>Note:</strong>
   962  If the reference should be only a single item, rather than a slice (or collection)
   963  of items, omit the <code>[]</code>, changing the command to:</p>
   964  <div class="codehilite"><pre><span></span>$ ponzu gen content catalog year:int product:@product,title,price
   965  </pre></div>
   966                  
   967                    
   968                  
   969                
   970                
   971                  
   972                
   973              </article>
   974            </div>
   975          </div>
   976        </main>
   977        
   978          
   979  <footer class="md-footer">
   980    
   981      <div class="md-footer-nav">
   982        <nav class="md-footer-nav__inner md-grid">
   983          
   984            <a href="../General-Usage/" title="General Usage" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
   985              <div class="md-flex__cell md-flex__cell--shrink">
   986                <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
   987              </div>
   988              <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
   989                <span class="md-flex__ellipsis">
   990                  <span class="md-footer-nav__direction">
   991                    Previous
   992                  </span>
   993                  General Usage
   994                </span>
   995              </div>
   996            </a>
   997          
   998          
   999            <a href="../../Content/An-Overview/" title="An Overview" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
  1000              <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
  1001                <span class="md-flex__ellipsis">
  1002                  <span class="md-footer-nav__direction">
  1003                    Next
  1004                  </span>
  1005                  An Overview
  1006                </span>
  1007              </div>
  1008              <div class="md-flex__cell md-flex__cell--shrink">
  1009                <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
  1010              </div>
  1011            </a>
  1012          
  1013        </nav>
  1014      </div>
  1015    
  1016    <div class="md-footer-meta md-typeset">
  1017      <div class="md-footer-meta__inner md-grid">
  1018        <div class="md-footer-copyright">
  1019          
  1020          powered by
  1021          <a href="http://www.mkdocs.org" title="MkDocs">MkDocs</a>
  1022          and
  1023          <a href="http://squidfunk.github.io/mkdocs-material/" title="Material for MkDocs">
  1024            Material for MkDocs</a>
  1025        </div>
  1026        
  1027          
  1028    <div class="md-footer-social">
  1029      
  1030      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  1031      
  1032        <a href="https://github.com/rpdict" class="md-footer-social__link fa fa-github"></a>
  1033      
  1034        <a href="https://twitter.com/ponzu_cms" class="md-footer-social__link fa fa-twitter"></a>
  1035      
  1036    </div>
  1037  
  1038        
  1039      </div>
  1040    </div>
  1041  </footer>
  1042        
  1043      </div>
  1044      
  1045        <script src="../../assets/javascripts/application-6b599127bc.js"></script>
  1046        <script>app.initialize({url:{base:"../.."}})</script>
  1047        
  1048      
  1049      
  1050        
  1051        <script>!function(e,t,a,n,o,c,i){e.GoogleAnalyticsObject=o,e[o]=e[o]||function(){(e[o].q=e[o].q||[]).push(arguments)},e[o].l=1*new Date,c=t.createElement(a),i=t.getElementsByTagName(a)[0],c.async=1,c.src=n,i.parentNode.insertBefore(c,i)}(window,document,"script","https://www.google-analytics.com/analytics.js","ga"),ga("create","UA-98609560-1","auto"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName("a");Array.prototype.map.call(links,function(e){e.host!=document.location.host&&e.addEventListener("click",function(){var t=e.getAttribute("data-md-action")||"follow";ga("send","event","outbound",t,e.href)})});var query=document.forms.search.query;query.addEventListener("blur",function(){if(this.value){var e=document.location.pathname;ga("send","pageview",e+"?q="+this.value)}})</script>
  1052        
  1053      
  1054    </body>
  1055  </html>