alexpchin/Rails_Generating_and_Scaffolding.md

Railsin tiukkojen nimeämiskonventioiden käyttö tarkoittaa, että suuren osan ydinkoodista PITÄISI olla samassa muodossa kuka tahansa sen kirjoittaa? Sen voi kirjoittaa ystävä, kollega tai tietokone… sillä ei pitäisi olla väliä, koska samat Rails-säännöt koskevat kaikkia.

Tämä tarkoittaa, että Rails voi itse asiassa tehdä joitakin tehtäviä puolestasi!Se voi itse asiassa rakentaa asioita ja kirjoittaa koodia puolestasi…

Toiselta kieleltä kuten PHP:ltä tullessa tämä voi tuntua taikuudelta.

Pikaviite:

rails g scaffold Post name:string title:string content:textrails g controller Commentsrails g model Comment commenter:string body:text article:references

##Rails generatorRails generate-komento käyttää sovitusti suunniteltuja malleja luodakseen paljon hyödyllisiä asioita. Suorittamalla rails generate itsestään saat listan käytettävissä olevista generaattoreista:

rails generate

tai superhakkereille:

rails g

Generattoreita on paljon:

Rails:

  • assets
  • controller
  • generator
  • helper
  • integration_test
  • mailer
  • migration
  • model
  • .

  • observer
  • performance_test
  • resource
  • scaffold
  • scaffold_controller
  • session_migration
  • task

Coffee:

  • coffee:assets

Jquery:

  • jquery:install

Js:

  • js:assets

##Scaffolding in Rails

Railsin scaffolding-työkalu on nopea tapa luoda joitakin sovelluksen tärkeimpiä koodinpätkiä. Tämä säästää paljon aikaa, kun haluat päästä nopeasti vauhtiin! (Se on super siisti!)

Riippuen siitä, mitä haluat luoda, scaffolding voi luoda automaattisesti kaikki tai yhdistelmän seuraavista:

migrationsmodelsviewscontrollersunit_tests helpersstylesheetsjavascript

Voi olla muutama muukin tiedosto, jotka se tekee… En ole varma, onko tuo täydellinen lista!

##Kokonaisen resurssin telineellistäminen

Olet telineellistämässä objektiin (yksikössä)

Jos haluat telineellistää sovelluksen, sinun on telineellistettävä jokainen resurssi kyseisen sovelluksen sisällä. Jos haluaisit tehdä esimerkiksi blogisovelluksen – voisit telineellistää koko Post-resurssin:

rails g scaffold Post

Resurssin nimen Post täytyy olla:

  • UpperCamelCase
  • SINGULAR

Tämä nimi tulee olemaan mallin nimi, esim. Post. Se tulee olemaan myös ohjainluokan nimi (mutta monikossa), esim. PostsController JA taulukon nimi (mutta monikossa), esim. posts

Luokan nimen jälkeen voit lisätä taulukon sarakkeet ja niiden tietotyypit.

rails g scaffold Post name:string title:string content:text

Taulukon sarakkeiden nimien tulisi olla:

  • lower_snake_case
  • SINGULAR

Tämä johtuu siitä, että jokaiseen Post-kohteeseen on tarkoitus tallentaa yksi arvo jokaiseen sarakkeeseen.

Jos suorittaisit tämän telineen, se loisi nämä kaikki tiedostot:

PostControllerissa luodaan kaikki RESTful-metodit ja niillä kaikilla on vastaavat view-tiedostot.

Muutostiedoston luomisen jälkeen, jotta muutos tietokantaan voidaan tehdä, muista ajaa:

rake db:migrate

##Lisää pelkän ohjaimen luominen

Se ohjaa paljon objekteja (joten se on monikossa)

Joskus halutaan luoda pelkkä ohjain.

rails g controller Comments

Kontrollerin nimen on oltava:

  • UpperCamelCase
  • PLURALIZED

Tämä johtuu siitä, että kontrolleri käsittelee paljon esimerkkejä jostain objektista, joten sen pitäisi olla monikossa.

Tämä tekee nämä tiedostot:

Tämä EI luo migraatiotiedostoa tai mallitiedostoa.

##Luo vain mallin

Tuotat objektin hahmotelman (yksikössä)

Jos haluat luoda vain mallin, voit tehdä:

rails g model Comment
  • UpperCamelCase
  • SINGULAR

Voit halutessasi lisätä myös sarakkeiden nimet tähän:

rails g model Comment commenter:string body:text article:references

Taulukon sarakkeiden nimet tulisi olla:

  • alempi_käärmeen_kirjain
  • SINGULAR

Mallin luominen luo nämä tiedostot:

Vastaa

Sähköpostiosoitettasi ei julkaista.