آموزش روبی آن ریلز: ۲۵+ جم را بیاموزید و یک MVP استارتاپ ۲۰۲۳ بسازید - آخرین آپدیت

دانلود Ruby on Rails: Learn 25+ gems and build a Startup MVP 2023

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

دوره جامع و پیشرفته ساخت پلتفرم آموزش آنلاین با Ruby on Rails 6

بزرگترین و کامل‌ترین دوره Ruby on Rails 6. همیشه به‌روز شده.

آموزش ساخت پلتفرم آموزش آنلاین با Ruby on Rails

آموزش ساخت کلون Udemy با Ruby on Rails

فناوری‌های مورد استفاده در دوره

  • Ruby on Rails 6
  • Yarn و Webpacker
  • Bootstrap
  • FontAwesome
  • Gem simple_form
  • Gem faker
  • Gem devise
  • Gem friendly_id
  • Gem ransack
  • Gem public_activity
  • Gem rolify
  • Gem pundit
  • Gem exception_notification
  • Gem haml-rails
  • Gem pagy
  • Gem chartkick
  • Gem groupdate
  • Gem ranked-model
  • Gem aws-sdk-s3
  • Gem active_storage_validations
  • Gem image_processing
  • Gem recaptcha
  • Gem omniauth-google-oauth2
  • Gem wicked
  • Gem wicked_pdf
  • Rails 6 Active Storage
  • Gem rails-erd
  • AWS Cloud9
  • AWS S3
  • AWS IAM
  • Google Analytics
  • Google reCAPTCHA
  • Gem stripe
  • Rails 6 Scopes
  • Rails 6 Counter Cache
  • Rails 6 Callbacks
  • Rails 6 Action Text
  • Rails 6 dependent: restrict_with_error
  • Rails 6 Helpers
  • Rails 6 Action Mailer
  • Rails 6 Credentials
  • Selectize JS
  • jQuery-UI Sortable

پیش‌نیازهای دوره

  • مرورگر مدرن و اتصال به اینترنت
  • آشنایی اولیه با برنامه‌نویسی مفید است.
  • دانش پایه از Ruby و Rails یک مزیت محسوب می‌شود.
  • نیاز به هیچ نرم‌افزار پولی نیست.

درباره دوره

با افتخار اعلام می‌کنم که این دوره، غنی‌ترین دوره Ruby on Rails 6 در اینترنت است.

این دوره شامل 200 سخنرانی و 20 ساعت محتوای ویدیویی است.

این دوره نتیجه 6 سال تجربه من در مهندسی نرم‌افزار و 6 ماه تلاش برای نگارش آن است.

در طول سال‌ها توسعه نرم‌افزار، از طریق آزمون و خطا و تحقیق، چیزهای زیادی یاد گرفته‌ام.

شما نیازی به صرف زمان مشابه من ندارید!

در این دوره، بهترین شیوه‌های استفاده از گِم‌ها (gems) و ویژگی‌های مختلف را خلاصه کرده‌ام.

همه چیز را با تمرین یاد خواهید گرفت!

همچنین نحوه عیب‌یابی مسائل مختلف در محیط توسعه و تولید را خواهیم آموخت.

آنچه در این دوره خواهید آموخت

  • یادگیری گام به گام و ویژگی به ویژگی نحوه ساخت پلتفرم آموزش آنلاین پیشرفته خودتان (مانند Udemy یا Skillshare)

  • دسترسی به کد منبع اپلیکیشن نهایی

  • کسب دانش و مهارت گسترده مورد نیاز برای ساخت تقریباً هر اپلیکیشن وبی که تصور می‌کنید.

  • آشنایی با تمام فناوری‌های مدرن مورد نیاز برای یافتن شغل توسعه‌دهنده Full Stack Ruby on Rails.

به عنوان یک مبتدی، کل فرآیند توسعه یک اپلیکیشن با چندین ویژگی را خواهید آموخت.

به عنوان یک توسعه‌دهنده باتجربه، ویژگی‌هایی را که تجربه کمتری با آن‌ها داشته‌اید، تسلط پیدا خواهید کرد.

برخی از موضوعات پوشش داده شده در دوره

یادگیری بیش از 25 گِم پرطرفدار Ruby on Rails

  1. simple_form - روش استاندارد صنعتی برای ساخت فرم‌ها

  2. faker - ایجاد داده‌های ساختگی

  3. friendly_id - ایجاد URL های زیبا

  4. ransack - جستجو و فیلتر داده‌ها

  5. public_activity - ردیابی تمام فعالیت‌ها در اپلیکیشن

  6. pagy - بهترین گِم برای صفحه‌بندی

  7. devise - احراز هویت (ورود کاربران)

  8. rolify - اختصاص نقش‌های مختلف به کاربران

  9. pundit - مجوزدهی (امکان انجام اقدامات مختلف توسط کاربران)

  10. haml-rails - زبان نشانه‌گذاری استاندارد صنعتی

  11. chartkick - نمودارهای زیبا

  12. groupdate - گروه‌بندی داده‌ها بر اساس دوره‌ها

  13. exception_notification - پیام‌های خطا در محیط پروداکشن

  14. rails-erd - تولید نمودار رابطه موجودیت (ERD)

  15. ranked-model - مرتب‌سازی آیتم‌ها در یک لیست

  16. aws-sdk-s3 - ذخیره فایل‌ها در AWS S3

  17. active_storage_validations - اعتبارسنجی فایل‌های پیوست

  18. image_processing - نمایش و مدیریت تصاویر

  19. recaptcha - جلوگیری از ثبت‌نام ربات‌ها

  20. wicked_pdf - استایل‌دهی و تولید اسناد PDF

  21. wicked - ساخت فرم‌های گام به گام (Wizard)

  22. omniauth-google-oauth2 - ورود با گوگل

  23. omniauth-facebook - ورود با فیسبوک

  24. omniauth-github - ورود با گیت‌هاب

  25. cocoon - فرم‌های تو در تو

  26. stripe - پذیرش پرداخت‌ها

یادگیری استفاده از Yarn و Webpacker - ویژگی جدید هسته Rails 6:

  1. Bootstrap

  2. FontAwesome

  3. Cocoon

  4. نصب VideoJS

  5. Chartkick

  6. jQuery-UI

  7. Trix

یادگیری ویژگی‌های Ruby on Rails:

  1. Action Text

  2. Active Storage

  3. Action Mailer

  4. کلیدهای مخفی (Secret Credentials)

  5. Counter Cache

  6. Scopes

  7. متدهای کمکی اپلیکیشن (Application Helper Methods)

  8. افزودن دکمه‌های سفارشی

  9. اعتبارسنجی شرطی

  10. Callbacks

  11. جمع‌بستن (Pluralization)

  12. متد Increment

  13. dependent: restrict_with_error

  14. منابع تو در تو پیشرفته

  15. استفاده از متدهای کمکی

  16. دکمه‌ها برای اقدامات سفارشی

یادگیری فناوری‌های پشتیبان:

  1. AWS Cloud9 IDE ابری

  2. ذخیره‌سازی فایل AWS S3

  3. پایگاه داده PostgreSQL

  4. Git و Github

  5. Heroku

  6. Sendgrid

  7. Google Analytics

  8. Google reCaptcha

  9. Google oAuth API

  10. Google & Bing Webmaster

  11. Facebook oAuth API

  12. Github oAuth API

  13. Stripe

همانطور که می‌بینید، این یک دوره سریع و کد-آلُنگ (Code-Along) است که تعداد زیادی موضوع را پوشش می‌دهد.

نکات اضافی:

  • اگر به زمان خود ارزش می‌دهید و نمی‌خواهید ساعت‌ها صرف یادگیری نحوه کار یک گِم کنید، این دوره را در نظر بگیرید.

  • این دوره مباحث بسیار ابتدایی درباره Ruby و Rails را پوشش نمی‌دهد. بنابراین، داشتن دانش قبلی مفید خواهد بود.

  • من یک مهندس Ruby on Rails حرفه‌ای هستم و این دوره را از روی اشتیاق به اشتراک‌گذاری دانش ساخته‌ام.

  • من بومی زبان نیستم و بازیگر حرفه‌ای هم نیستم، بنابراین انتظار کیفیت صدای استودیویی نداشته باشید.

مشتاقانه منتظر دیدن شما در دوره هستم!


سرفصل ها و درس ها

مقدمه و تنظیمات Introduction and Setup

  • پیش‌نمایش اپلیکیشن نهایی Preview of the final application

  • از اینجا شروع کنید START HERE

  • لینک‌های مفید. دسترسی به کد منبع USEFUL LINKS. ACCESS THE SOURCE CODE

(به‌روزرسانی ۲۰۲۱) نصب Ruby on Rails 6، پیکربندی اپلیکیشن (2021 update) Install Ruby on Rails 6, configure application

  • ایجاد محیط توسعه، نصب ruby on rails 6، ایجاد اپلیکیشن create development environment, install ruby on rails 6, create app

  • ارسال اپلیکیشن به گیت‌هاب push application to github

  • متن: ارسال اپلیکیشن به گیت‌هاب TEXT: push application to github

  • نکته حرفه‌ای - اتصال SSH - ارسال به گیت‌هاب بدون وارد کردن مجدد رمز عبور PRO TIP - ssh connection - push to github without re-entering password

  • سلام دنیا - تولید یک صفحه استاتیک hello world - generate a static page

  • اتصال به هرکو - اجرای اپلیکیشن در محیط پروداکشن connect heroku - run application in production

  • نکته حرفه‌ای - حذف تغییرات، لغو کامیت‌ها PRO TIP - delete changes, undo commits

  • متن: نکته حرفه‌ای - حذف تغییرات، لغو کامیت‌ها TEXT: PRO TIP - delete changes, undo commits

  • AWS - فضای دستگاه پر شده است - اضافه کردن ۲۰ گیگابایت فضای ذخیره‌سازی AWS - no space left on device - add 20 gb storage

  • نصب بوت‌استرپ با Yarn و Webpacker Install bootstrap with yarn and webpacker

  • استفاده پایه از بوت‌استرپ Bootstrap basic usage

  • نصب و استفاده از آیکون‌های Fontawesome با Yarn و Webpacker Install and use Fontawesome icons with yarn and webpacker

  • عرض صفحه واکنش‌گرا Responsive screen width

ساخت MVP (حداقل محصول قابل دوام) Building the MVP (minimum viable product)

  • gem haml-rails - روشی مناسب تر برای ویرایش HTML gem haml-rails - more RoR-friendly way of editing HTML

  • static_pages/lading_page در مقابل home/index static_pages/lading_page VS home/index

  • gem simple_form - روش بهتری برای کار با فرم ها gem simple_form - better way to work with forms

  • gem haml-rails - روش دوستانه‌تر با RoR برای ویرایش HTML gem haml-rails - more RoR-friendly way of editing HTML

  • gem simple_form - روش بهتر برای کار با فرم‌ها gem simple_form - better way to work with forms

  • TEXT: gem simple_form - روش بهتری برای کار با فرم ها TEXT: gem simple_form - better way to work with forms

  • متن: gem simple_form - روش بهتر برای کار با فرم‌ها TEXT: gem simple_form - better way to work with forms

  • جدول دوره ها را اضافه کنید add a Courses table

  • TEXT: یک جدول دوره ها اضافه کنید TEXT: add a Courses table

  • اضافه کردن جدول دوره‌ها (Courses) add a Courses table

  • متن: اضافه کردن جدول دوره‌ها (Courses) TEXT: add a Courses table

  • action_text - ویرایشگر متن غنی action_text - rich text editor

  • TEXT: action_text - ویرایشگر متن غنی TEXT: action_text - rich text editor

  • action_text - ویرایشگر متن غنی action_text - rich text editor

  • gem faker and seeds.rb - داده های جعلی را به برنامه اضافه کنید gem faker and seeds.rb - add fake data to the app

  • متن: action_text - ویرایشگر متن غنی TEXT: action_text - rich text editor

  • TEXT: gem faker و seeds.rb - داده های جعلی را به برنامه اضافه کنید TEXT: gem faker and seeds.rb - add fake data to the app

  • gem faker و seeds.rb - اضافه کردن داده‌های جعلی به اپلیکیشن gem faker and seeds.rb - add fake data to the app

  • Gem Device برای احراز هویت (ورود به سیستم، خروج از سیستم) gem devise for authentication (log in, log out)

  • متن: gem faker و seeds.rb - اضافه کردن داده‌های جعلی به اپلیکیشن TEXT: gem faker and seeds.rb - add fake data to the app

  • gem devise برای احراز هویت (ورود، خروج) gem devise for authentication (log in, log out)

  • دوره متعلق به کاربر - روابط course belong_to user - relationships

  • course belong_to user - روابط course belong_to user - relationships

  • طراحی برای پیام های اطلاع رسانی design for notification messages

  • طراحی برای پیام‌های اعلان design for notification messages

  • اضافه کردن یک نوار ناوبری کاربردی adding a functional navbar

  • قسمت جستجو در نوار ناوبری search field in navbar

  • اضافه کردن نوبار (navbar) کاربردی adding a functional navbar

  • فیلد جستجو در نوبار search field in navbar

  • دوره های استایل و شاخص خانه styling courses and home index

  • gem friendly_id - پیوندهای کاربر پسند را نشان دهید gem friendly_id - show user friendly links

  • استایل‌دهی دوره‌ها و صفحه اصلی (index) styling courses and home index

  • gem friendly_id - نمایش لینک‌های کاربرپسند gem friendly_id - show user friendly links

  • قابل پیگیری (ردیابی آدرس IP کاربر، ایجاد صفحه فهرست کاربران devise trackable (track user IP address, create users index page

  • gem friendly_id - نمایش لینک‌های کاربرپسند gem friendly_id - show user friendly links

  • devise trackable (ردیابی آدرس IP کاربر، ایجاد صفحه فهرست کاربران) devise trackable (track user IP address, create users index page

  • طراحی قابل پیگیری (ردیابی آدرس IP کاربر، ایجاد صفحه فهرست کاربران) devise trackable (track user IP address, create users index page)

  • devise trackable (ردیابی آدرس IP کاربر، ایجاد صفحه فهرست کاربران) devise trackable (track user IP address, create users index page)

  • ابداع قابل تایید در توسعه pt1 devise confirmable in development pt1

  • ابداع قابل تایید در توسعه pt2 devise confirmable in development pt2

  • devise confirmable در محیط توسعه - بخش اول devise confirmable in development pt1

  • sendgrid - ارسال ایمیل در حال تولید sendgrid - send emails in production

  • devise confirmable در محیط توسعه - بخش دوم devise confirmable in development pt2

  • sendgrid - ارسال ایمیل در محیط پروداکشن sendgrid - send emails in production

  • Amazon SES - روش بهتری برای ارسال ایمیل در تولید Amazon SES - better way to send emails in production

  • sendgrid - ارسال ایمیل در محیط پروداکشن sendgrid - send emails in production

  • فیلدهای بیشتری به دوره ها اضافه کنید add more fields to courses

  • Amazon SES - روش بهتر برای ارسال ایمیل در محیط پروداکشن Amazon SES - better way to send emails in production

  • جست و جوی سنگ های قیمتی - سطح 1 - داده ها را در یک جدول فیلتر و جستجو کنید gem ransack - level 1 - filter and search data in a table

  • اضافه کردن فیلدهای بیشتر به دوره‌ها add more fields to courses

  • Gem ransack - سطح 2 - دوره های جستجو و فیلتر gem ransack - level 2 - search and filter courses

  • gem ransack - سطح ۱ - فیلتر و جستجو در داده‌های جدول gem ransack - level 1 - filter and search data in a table

  • Gem ransack سطح 3 - جستجو در نوار ناوبری gem ransack level 3 - search in navbar

  • gem ransack - سطح ۲ - جستجو و فیلتر دوره‌ها gem ransack - level 2 - search and filter courses

  • gem ransack سطح ۳ - جستجو در نوبار gem ransack level 3 - search in navbar

  • gem ransack - level 3 - ransack search در navbar gem ransack - level 3 - ransack search in navbar

  • gem ransack - سطح ۳ - جستجوی Ransack در نوبار gem ransack - level 3 - ransack search in navbar

  • gem public_activity - همه اقدامات را در برنامه پیگیری کنید gem public_activity - track all actions in the app

  • پاورقی اضافه کنید add a footer

  • gem public_activity - ردیابی تمام عملیات در اپلیکیشن gem public_activity - track all actions in the app

  • بررسی دانش Knowledge check

  • اضافه کردن فوتر add a footer

  • آزمون دانش Knowledge check

نقش‌ها و مجوزها Roles and Authorization

  • تبلیغ - نقش‌ها و مجوزها promo - roles & authorization

  • gem rolify - اضافه کردن نقش به کاربران gem rolify - add roles to users

  • gem rolify - ویرایش نقش‌های کاربر gem rolify - edit user roles

  • gem rolify - استفاده از دسترسی مبتنی بر نقش gem rolify - using role based access

  • gem pundit - نصب و مورد استفاده نمونه gem pundit - installation and example usecase

  • gem pundit - مجوزدهی برای دوره‌ها gem pundit - authorization for courses

  • gem pundit - فقط مدیر می‌تواند سایر کاربران را ویرایش کند gem pundit - only admin can edit other users

  • gem pundit - کاربر فقط لینک‌هایی را می‌بیند که به اقدامات مجاز اشاره دارند gem pundit - user can see links only to allowed actions

  • آزمون دانش Knowledge check

ساخت عملکرد اصلی پلتفرم آموزش الکترونیکی Building the core functionality of the e-learning platform

  • gem friendly_id برای کاربران، نمایش کاربر gem friendly_id for users, user show

  • بررسی آنلاین بودن کاربر check if user is online

  • اضافه کردن جدول Lessons، friendly_id، استایل‌دهی add a Lessons table, friendly_id, styling

  • public_activity برای Lessons، ایجاد درس‌ها در دوره‌ها public_activity for Lessons, create lessons inside courses

  • action_text برای Lessons، اضافه کردن breadcrumbs برای نمایش درس action_text for Lessons, add breadcrumbs for lesson show

  • gem pundit - مجوزدهی برای Lessons gem pundit - authorization for Lessons

  • منابع تو در تو (nested resources). درس‌ها در دوره‌ها nested resources. lessons in courses

  • gem pundit - مجوزدهی برای اقدام ایجاد Lessons gem pundit - authorization for Lessons create action

  • استایل‌دهی جزئی برای ویوهای ویرایش و جدید minor styling for edit and new views

  • پروداکشن - گشتی در هرکو production - tour around heroku

  • gem exception_notification - دریافت خطاها در پروداکشن gem exception_notification - catch errors in production

  • طراحی برای دوره‌ها و درس‌ها design for courses and lessons

  • gem pagy برای صفحه‌بندی gem pagy for pagination

  • اضافه کردن عنوان پویا به تب‌های صفحه add dynamic title to page tabs

  • اسکافولد Enrollments. اعتبارسنجی و طراحی پایه scaffold Enrollments. Basic validation and design

  • دکمه برای ثبت‌نام کاربر در دوره Button for user to Enroll to a Course

  • gem pundit برای Enrollments gem pundit for Enrollments

  • gem pundit - کاربر می‌تواند به دوره‌های خریداری شده خود دسترسی داشته باشد gem pundit - user can access his purchased Courses

  • کار بر روی ویوهای Enrollment work on Enrollment views

  • دکمه برای کاربر جهت مرور یک دوره Button for user to Review a Course

  • gem pagy برای Enrollments و Users gem pagy for Enrollments and Users

  • gem friendly_id برای enrollments gem friendly_id for enrollments

  • gem ransack برای فهرست enrollments gem ransack for enrollments index

  • ناوبری برای دانشجو، معلم، مدیر Navigation for student, teacher, admin

  • Collections و Scopes + Ransack + Pagy برای دوره‌ها و ثبت‌نام‌ها Collections and Scopes + Ransack + Pagy for Courses and Enrollments

  • شمارنده‌ها در هدر Counters in header

  • محاسبه امتیاز برای دوره‌ها Calculate rating for courses

  • مبانی counter_cache (تعداد ثبت‌نام‌ها برای دوره) counter_cache basics (enrollments_count for Course)

  • اضافه کردن counter_cache در سراسر اپلیکیشن add counter_cache across app

  • استایل‌دهی و اعتبارسنجی بیشتر دوره‌ها More course styling and validation

  • فهرست دوره‌ها با مرتب‌سازی Ransack بر اساس قیمت، محبوبیت، امتیاز، جدیدترین‌ها Courses index ransack sort by price, populararity, rating, newest

  • صفحه اصلی پویا و شخصی‌سازی شده (دوره‌های محبوب، جدید، برتر) Dynamic & Personalized Homepage (Popular, New, Top Rated Courses)

  • انتقال منطق از کنترلر به مدل با استفاده از scopes Move logic from controller to model using scopes

  • جدول UserCourse - ردیابی اینکه آیا کاربر درسی را دیده است. مهاجرت و راه‌اندازی UserCourse table - track if a user has seen a lesson. Migration and setup

  • ردیابی پیشرفت کاربر در یک دوره Track User progress in a Course

  • استایل‌دهی دوره‌ها و درس‌ها Styling courses and lessons

  • شمارش جمع برای نمایش دوره Pluralization for course show

  • اعتبارسنجی برای حذف با رکوردهای وابسته (restrict_with_error, nullify) Validation for Destroy with dependent records (restrict_with_error, nullify,

  • نمایش درس - ناوبری بین درس‌ها در یک دوره Lesson show - navigation between lessons in a course

  • gem chartkick و groupdate - اضافه کردن نمودارها gem chartkick and groupdate - add charts

  • بارگذاری نمودارها بدون اتمام زمان (timeout) load charts without timeouts

  • نمودارها در مسیرها (routes)، گروه‌بندی بر اساس مجموع namespace charts in routes, group by sum

  • شمارش بازدیدها با متد increment count impressions with increment method

  • دکمه‌های سفارشی برای انتشار یا تأیید یک دوره custom buttons to publish or approve a course

  • اعتبارسنجی پیچیده برای اینکه چه کسی می‌تواند نمایش یک دوره را ببیند complex validation who can see a course show

  • gem public_activity - لینک‌های چندریختی (polymorphic) با منابع تو در تو gem public_activity - polymorphic links with nested resources

  • application_helper برای استایل‌دهی شرطی application_helper for conditional styling

  • gem rails-erd برای تولید خودکار نمودارهای روابط gem rails-erd to generate relationship-diagrams automatically

  • ویوهای بهتر برای کاربران وارد نشده better views for not logged in users

  • link_to دوره‌ها با پارامترهای جستجوی ransack link_to courses with ransack search params

  • نمودارها و تحلیل‌های خاص دوره، گروه‌بندی پیشرفته‌تر course-specific charts and analytics, more advanced grouping

  • به‌روزرسانی course_policy و ویو update course_policy and view

مرتب‌سازی رکوردها با کشیدن و رها کردن Sorting records with drag and drop

  • تبلیغ - مرتب‌سازی رکوردها promo - sort records

  • gem ranked_model - اختصاص شماره به درس‌های درون یک دوره gem ranked_model - give lessons inside a course a number

  • لینک به درس قبلی و بعدی در نمایش درس link to previous and next lesson in lesson show

  • jquery-ui sortable - قابل مرتب‌سازی کردن درس‌ها و ذخیره تغییرات jquery-ui sortable - make lessons sortable and persist changes

Active Storage و Action Text Active Storage and Action Text

  • تبلیغ - active_storage و action_text promo - active_storage & action_text

  • Credentials و کلیدهای مخفی - بخش اول credentials and secret keys PART 1

  • gem aws-sdk-s3، پیکربندی ذخیره‌سازی S3 Bucket، اضافه کردن آواتار به دوره‌ها gem aws-sdk-s3, configure aws s3 bucket storage, add avatar to courses

  • gem active_storage_validations. اعتبارسنجی آواتار دوره. نمایش آواتار در دوره gem active_storage_validations. validates course avatar. display avatar in co

  • gem image_processing برای رفع نمایش تصاویر در action_text، تنظیم CORS برای S3 Bucket gem image_processing to fix action_text displaying images, S3 bucket CORS set

  • Credentials و کلیدهای مخفی - بخش دوم - پروداکشن credentials and secret keys PART 2 - PRODUCTION

  • محدودیت‌های پیوست فایل در action_text، دانلود و نمایش action_text attachment restrictions, download and display

  • محدود کردن پیوست‌ها در action_text، اعتبارسنجی‌های بیشتر برای دوره و درس action_text restrict attachments, more validations for course and lesson

  • پیوست ویدیو و پیش‌نمایش با active_storage و HTML5 video attachment and preview with active_storage and HTML5

  • استایل‌دهی درس‌ها، اعتبارسنجی ویدیو styling lessons, video validation

  • حذف پیوست‌ها (ویدیو و تصویر بند انگشتی ویدیو) deleting attachments (video and video_thumbnail)

  • action_text - اجازه بارگذاری فایل، اضافه کردن پیش‌نمایش ویدیو به blob action_text - allow file upload, add video preview to blob

  • action_text - پخش صدا با HTML5 action_text - play audio with HTML5

  • ادغام پخش‌کننده video.js video.js player integration

  • simple_form برای rich_text_area (actiontext) simple_form for rich_text_area (actiontext)

  • گنجاندن یوتیوب در action_text action_text youtube embeds

ادغام نظرات با مسیرهای تو در تو Integrating Comments with Nested Routes

  • تبلیغ - نظرات تو در تو promo - nested comments

  • منابع تو در تو - نظرات در درس‌ها nested resources - comments inside lessons

  • counter_cache برای نظرات، متد حذف نظر counter_cache for comments, method to delete comment

  • public_activity برای نظرات public_activity for comments

  • مجوزدهی Pundit برای حذف یک نظر pundit authorization for destroying a comment

  • اضافه کردن counter_cache برای user_lessons به درس‌ها و کاربران add counter_cache for user_lessons to lessons and users

آماده‌سازی اپلیکیشن برای پروداکشن Preparing the app for production

  • تبلیغ - آماده‌سازی برای پروداکشن promo - preparing for production

  • gem recaptcha با devise - بدون ثبت‌نام ربات gem recaptcha with devise - no bot signups

  • اضافه کردن کلیدهای recaptcha به credentials add recaptcha keys to credentials

  • اضافه کردن Google Analytics add google analytics

  • استایل‌دهی اپلیکیشن، اضافه کردن لوگو و تصویر بند انگشتی styling app, adding logo and thumbnail

  • کاهش نسخه jquery به 3.4.1 برای کارکرد درست نوبار بوت‌استرپ در صفحه کوچک downgrade jquery to 3.4.1 to make bootstrap navbar dropdown work on small screen

  • yarn remove video.js - حذف کتابخانه از اپلیکیشن ما yarn remove video.js - remove library from our app

  • اتصال یک دامنه به اپلیکیشن ما در پروداکشن connecting a domain to our application in production

  • غیرفعال کردن دانلود ویدیو (غیرفعال کردن کلیک راست روی ویدیو) disable video download (disable rightclick on video)

  • privacy_policy و تگ‌های SEO privacy_policy and SEO tags

  • اضافه کردن لایسنس به مخزن گیت‌هاب ما adding a licence to our github repository

  • زیباسازی ویوهای devise beautify devise views

  • اضافه کردن sitemap برای جستجوی گوگل و بینگ Add a sitemap for Google and Bing search

API: ورود با گوگل، گیت‌هاب، فیس‌بوک (omniauth) API: Log in with google, github, facebook (omniauth)

  • تبلیغ - ورود اجتماعی promo - social login

  • gem omniauth-google-oauth2 - ورود با گوگل gem omniauth-google-oauth2 - log in with google

  • به‌روزرسانی ژوئن ۲۰۲۱ - رفع خطاهای Omniauth 2.0 June 2021 Update - Fix Omniauth 2.0 Errors

  • رفع خطای omniauth "یافت نشد. احراز هویت passthru" (Omniauth 2.0) Fix omniauth "Not found. Authentication passthru" error (Omniauth 2.0)

  • وارد کردن داده‌های شخصی کاربر omniauth import omniauth user personal data

  • gem omniauth-github - ورود با گیت‌هاب gem omniauth-github - log in with github

  • Credential های متفاوت برای محیط‌های مختلف. گیت‌هاب different credentials for different environments. Github

  • gem omniauth-facebook - ورود با فیس‌بوک gem omniauth-facebook - log in with facebook

  • بازسازی omniauth (پاکسازی کد) refactor omniauth (clean up code)

ویژگی حرفه‌ای: انتخاب یا ایجاد تگ با selectize js PRO FEATURE: Select or Create Tags with selectize js

  • تبلیغ - انتخاب یا ایجاد با selectize-js promo - select or create with selectize-js

  • selectize.js - دوره دارای تگ‌های زیاد از طریق course_tags selectize.js - course has many tags through course_tags

  • دو روش جستجوی دوره‌ها بر اساس تگ با ransack two ways to search courses by tags with ransack

  • لینک به صفحه فعلی با پارامترها (برای جستجوی تگ‌ها) link to current page with params (for searching tags)

  • selectize.js - انتخاب یا ایجاد تگ selectize.js - select or create tag

  • مدیر می‌تواند تگ‌ها را مدیریت و حذف کند admin can manage and delete tags

  • نمایش دوره‌های مشابه در نمایش دوره بر اساس تگ‌ها list similar courses in course show based on tags

ویژگی حرفه‌ای: گواهی‌نامه اتمام دوره PDF با wicked_pdf PRO FEATURE: PDF Certificate of Completion with wicked_pdf

  • تبلیغ - تولید PDF promo - PDF generation

  • gem wicked_pdf - قابلیت تولید PDF از HTML gem wicked_pdf - ability to generate PDF from HTML

  • گواهی‌نامه تکمیل ثبت‌نام و استایل‌دهی enrollment completion certificate and styling

  • pdf.html - حذف کد استفاده نشده، فهرست ثبت‌نام‌ها - لینک به گواهی‌نامه pdf.html - remove unused code, enrollments index - link to certificate

  • gem متفاوت PDF برای محیط توسعه و پروداکشن different pdf gem for development and production

  • استایل‌دهی گواهی‌نامه تکمیل دوره PDF styling pdf certificate of completion

  • گواهی‌نامه تکمیل فقط برای دوره‌های تکمیل شده certificate of completion only for completed courses

  • منطق helper برای مشاهده گواهی‌نامه تکمیل helper logic to view certificate of completion

ویژگی حرفه‌ای: فرم‌های چند مرحله‌ای با gem WICKED PRO FEATURE: Multistep forms with gem WICKED

  • تبلیغ - فرم‌های چند مرحله‌ای promo - multistep forms

  • gem wicked برای فرم‌های چند مرحله‌ای gem wicked for multistep forms

  • gem wicked - گنجاندن course_wizard در دوره‌ها gem wicked - nest course_wizard inside courses

  • gem wicked - ویرایش و به‌روزرسانی عملکرد gem wicked - edit and update functionality

  • gem wicked - استایل‌دهی و مجوزدهی gem wicked - styling and authorization

  • چیدمان برای مراحل جادوگر (wizard)، حذف اقدام ویرایش دوره layout for wizard steps, remove course edit action

  • استایل‌دهی ناوبری پیشرفت جادوگر، حذف فیلدهای فرم دوره styling wizard progress navigation, remove fields course form

ویژگی حرفه‌ای: ActionMailer - ارسال ایمیل‌های خروجی PRO FEATURE: ActionMailer - send outbound emails

  • تأیید ایمیل هنگام ثبت‌نام کاربر در دوره email confirmation when a user enrolled to a course

  • ایمیل به معلم هنگام ثبت‌نام کاربر در دوره او email to teacher when a user enrolls to his course

  • user_mailer - ارسال ایمیل به تمام مدیران هنگام ثبت‌نام کاربر جدید user_mailer - send all admins emails when a new user registers

  • gem letter opener - پیش‌نمایش ایمیل‌ها در محیط توسعه gem letter opener - preview emails in development environment

ویژگی حرفه‌ای: gem cocoon - یک فرم برای ویرایش و ایجاد چندین درس PRO FEATURE: gem cocoon - one form to edit and create multiple lessons

  • نصب gem cocoon. ویرایش درس‌ها در فرم دوره install gem cocoon. edit lessons in course form

پرداخت‌های Stripe، کار با پول، منطق تجاری Stripe Payments, working with money, business logic

  • پرداخت‌ها - منطق تجاری برای محاسبه درآمد و هزینه کاربر payments - business logic for user income and expenses calculation

  • پرداخت‌ها با Stripe - بخش اول payments with stripe part 1

  • پرداخت‌ها با Stripe - بخش دوم payments with stripe part 2

رفع‌ها و تنظیمات Fixes and Adjustments

  • ارتقا به Rails EDGE و رفع مشکلات active_storage Upgrading to Rails EDGE and troubleshooting active_storage issues

  • کاهش نسخه Rails و رفع مشکلات selectize downgrading Rails and fixing selectize issues

  • کاهش نسخه Rails و رفع مشکلات active_storage downgrading Rails and fixing active_storage issues

  • به‌روزرسانی به rails 6.0.3 Update to rails 6.0.3

  • تغییر نام ستون (short- به marketing- description) renaming a column (short- to marketing- description)

  • gem public_activity برای کاربر gem public_activity for user

  • فوتر همیشه در پایین footer always on bottom

  • gem sitemap_generator، ویرایش robots.txt gem sitemap_generator, edit robots.txt

  • نقشه‌های سایت (sitemaps) که در هرکو با مخزن عمومی AWS S3 کار می‌کنند sitemaps working on heroku with AWS S3 public repo

  • متن: اجبار SSL در پروداکشن TEXT: force SSL in production

  • اجرای کد منبع Corsego در محیط توسعه Run the Corsego source code in development

  • Devise invitable - ارسال ایمیل دعوت به کاربران برای پیوستن به اپلیکیشن Devise invitable - send invitation emails to users to join the app

تشکر و مراحل بعدی Thank you and next steps

  • نقشه راه. مراحل بعدی. Roadmap. Next steps.

  • تشکر Thank you

نمایش نظرات

آموزش روبی آن ریلز: ۲۵+ جم را بیاموزید و یک MVP استارتاپ ۲۰۲۳ بسازید
جزییات دوره
20.5 hours
200
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
5,040
4.4 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Yaroslav Shmarov Yaroslav Shmarov

مهندس و معلم Ruby on Rails. برنده 7 برابر هکاتون