×
Сабақтар Хабарландыру тақтасы Кіру Қазақша-ағылшынша сөздік Ағылшынша-қазақша сөздік Пәндер Тіркелу

Ruby on Rails деген не? Скаффолдинг деген не? CRUD деген не?

Создание интернет магазина

Ruby on Rails әлемдегі ең танымал веб фреймворк боп табылады. Осы құралдың көмегімен сіз веб стартап жасай аласыз. Программист боп жұмыс істей аласыз. Немесе өзгеге фриланс арқылы сайт жасап тиын таба аласыз.

Ruby on Rails

Сізге осы фреймворкты үйретеміз. Бар күшін салып оқыған бала бір айда тәуір программист бола алады. Аса қамқор, ерекше мейірімді Алланың атымен бастайық!

Ең алдымен replit.com сайтында тіркелініз:

Replit.com сайтыБұл үшін Sign Up не Start creating сілтемесін бассаңыз мынандай бет ашылады (replit.com сайтының көмегімен біз осы фреймворкты үйренеміз. Компьютерге арнайы бағдарламалар мен бағдарламалау тілдерін орнатпай-ақ):

Replit.com сайтында тіркелуАстында Гугл аккаунтымен кіру дегенге басып сайтқа кірініз. Немесе пошта арқылы тіркеліп сайтқа кіріңіз. Сайтқа кіргеннен кейін +Create пернесін басыныз:

Replit.com жаңа жоба құру

Осыдан кейін сізде технологияны таңдау терезесі ашылады (Ruby on Rails-тен басқа технологиялар мен тілдер бар. Мысалы атақты python тілі):

Ruby on Rails

Template бөлімінде Rails дегенді таңдаймыз ал Title жолына сіздің жобаныздың атын жазамыз да +Create Repl дегенді басып проекті құрамыз. Проект бірнеше минут ішінде құрылады. Тоса тұрамыз да мынандай терезелерді көреміз:

Replit.com жұмыс орныСол жақта Files деген жер бар. Осы жерде проект файлдары орналасқан. Кодты осы жерде жазамыз. Ортасында таңдалған файл тұр. Ал оң жақта консоль тұр.

Үстінде Run пернесі бар. Ол проекты іске қосады. Бассақ мынандай терезе біраз уақыттан кейін ашылады:

Replit.com проектінің адресі

Осы адресті көшіріп жаңа терезеде ашсақ алғашқы Ruby on Rails жобамыздың бетін көреміз (егер бет осы адреспен ашылмаса https орнына http-ты қойып ашып көрініз.):

Ruby on Rails hello world!

Скаффолдинг

Енді консолге курсормен (телефонда саусақпен) басамыз. Және Ctrl мен C пернесін бірге басамыз. Немесе үстіндегі Stop басып Ruby on Rails-ті тоқтатамыз. Енді консолге мынандай бұйрық жазамыз:

rails g scaffold sabaq aty:string matini:text

Және Enter пернесін басамыз. Нәтижесінде консолде мынандай жолдар пайда болады (егер осыған ұқсас жолдар пайда болмай, қате деген жазу шықса консолге терген команданы тексеріп көріңіз):

Scaffold деген не?

Енді консолге тағы бір команда береміз (негізінен консоль заманауи бағдарламалауда кеңінен қолданылатын құрал. Консольді білмей үлкен, ірі сайттарды жасай алмайсыз):

rails db:migrate

Егер қатесіз жазсаңыз онда жаңа кесте құрылды деген жазу пайда болады. Менің консольімде осындай жазу пайда болды:

Миграция деген не?

Енді үстіндгі Start пернесін басамыз да сайтымызды ашамыз. Сайт ашылғаннан кейін оның адресіне /sabaqs қосамыз:

CRUD деген не?

Біз кодты жазбасақ та сайтымызда жаңа функционал пайда болды. Бұны скаффолдинг деп атайды. Скаффолдинг дегеніміз кодты бағдарламада жазу.

CRUD

Енді осы жерде New деген жерге бассақ мынандай бет пайда болады:

Сабақты қосу

Осы жерге сабақ атын және оның текстін жазып Create пернесін басыныз. Енді Back сілтемесіне бассаныз сіз терген тексті көре аласыз:

CRUD деген не?

Сіз осы жолмен сайтқа көп сабақ қоса аласыз. Және өзгерте де аласыз. Сабақты жоя да аласыз. Қысқасы қарапайым CRUD-ті (CRUD дегеніміз Create, Read, Update және Delete деген сөздерінің абривиатурасы. Қысқаша жазба құру, оқу, жаңарту және жою амалдары бар қосымша) жасадық.

Ruby on Rails файлдары

Енді Files деген жерге қарайық:

Файлдар

Осы жерде Ruby on Rails файлдары орналасқан. App папканың ішінде Controllers деген папкасы бар. Осы папкада контроллерлер орналасқан. Ал App/Views папкасында сайттың шаблондары, немесе вьюлар орналасқан.

Осыларды көріңіз. Коды қалай жазылды деп көз салыныз. Sabaqs_controller.rb файлында def басталып end аяқталатын жерлер бар. Бұны экшн дейді. Осы контролерде бірнеше экшн бар. Әрбір экшнның өз мақсаты бар. Index - барлық сабақтар көрсетілген бетке жауапты:

CRUD

Show - бір ғана сабақты көрсететін экшн, ал new - жаңа сабақты құруды жүзеге асырады:

Экшн деген не?

Осындай экшендерді сіз кейін өз бетімен құра аласыз. Біз осы кодты жазбадық. Скаффолдингтің көмегімен код пайда болды.

Ал енді вьюлерді көрейік. App/views/sabaqs папкасындағы мына файлды көрейік:

Views on Rails

Бұл файл сабақты қосу пішініне жауапты (aty мен matini жолдары бар):

Сабақты қосу

Сіз мына <%= form.label :aty, style: "display: block" %> жерде aty дегеннің орнына Аты деп жазып көріңіз. Не Сабақ_аты (осы жерде екі не одан көп сөз _ символмен қосылып жазылу керек) деп. Және старт басып сайтта жаңа сабақты қосып көрсеңіз өзгеріс пайда болады:

Ruby on Rails пішін

Ал app/views/new.html.rb файлында <h1> мен </h1> арасындағы жазуды өзгертсек сайтта өзгерісті өздеріңіз бақылап көріңіз (view файлдары ruby on rails кодтары бар кәдімгі html боп табылады):

Тайтл

Сабақты аяқтайық. Тым ұзақ боп кетпесін. Сонында config/routes.rb файлында мынандай кодты жазыңыз да сайтты қайтадан ашып көріңіз:

Routes on Rails

Енді сайтымыздың басты бетінде сабақтар көрсетіледі. Бұған жауапты root "sabaqs#index" коды. Sabaqs дегеніміз біздің контролеріміз, скаффолдингпен құрған контролеріміз ал index оның бір экшены. Сіз index орнына басқа экшенды қойып нәтижесін көрініз.

Сонымен танымал Ruby on Rails фреймворкы жайлы алғашқы сабағымызды аяқтаймыз. Келесі сабақта осыған суретті жүктеуді қосамыз. Rails-ке қарап басқа программистер өзге фреймворктарды жасаған. Мысалы php тіліндегі Ларавел мен python тіліндегі Джанго фреймворктары.

Пән: Бағдарламалау