Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Ruby on Rails 6: Learn 25+ gems and build a Startup MVP 2020, а также все другие курсы, прямо сейчас!
Премиум
  1. Урок 1. 00:11:22
    Preview of the final application
  2. Урок 2. 00:04:23
    START HERE
  3. Урок 3. 00:11:58
    create development environment, install ruby on rails 6, create app
  4. Урок 4. 00:03:58
    push application to github
  5. Урок 5. 00:05:23
    PRO TIP - ssh connection - push to github without re-entering password
  6. Урок 6. 00:13:00
    hello world - generate a static page
  7. Урок 7. 00:07:03
    connect heroku - run application in production
  8. Урок 8. 00:05:23
    PRO TIP - delete changes, undo commits
  9. Урок 9. 00:03:12
    AWS - no space left on device - add 20 gb storage
  10. Урок 10. 00:06:55
    Install bootstrap with yarn and webpacker
  11. Урок 11. 00:04:47
    Bootstrap basic usage
  12. Урок 12. 00:05:34
    Install and use Fontawesome icons with yarn and webpacker
  13. Урок 13. 00:01:08
    Responsive screen width
  14. Урок 14. 00:04:02
    Create AWS Cloud9 environment, install Ruby on Rails 6
  15. Урок 15. 00:05:25
    Create a Ruby on Rails 6 application, configure PostgreSQL
  16. Урок 16. 00:01:21
    First commit to Github
  17. Урок 17. 00:01:44
    Hello World. Generating a static page
  18. Урок 18. 00:03:34
    Push application to production on Heroku
  19. Урок 19. 00:03:12
    FIX ISSUE: "AWS Cloud9 NO SPACE LEFT ON DEVICE"
  20. Урок 20. 00:01:39
    gem haml-rails - more RoR-friendly way of editing HTML
  21. Урок 21. 00:08:18
    (REVISED) Install Bootstrap with Yarn and Webpacker
  22. Урок 22. 00:02:18
    gem font-awesome-sass - add cool icons for styling
  23. Урок 23. 00:00:51
    gem simple_form - better way to work with forms
  24. Урок 24. 00:02:41
    add a Courses table
  25. Урок 25. 00:04:35
    action_text - rich text editor
  26. Урок 26. 00:02:16
    gem faker and seeds.rb - add fake data to the app
  27. Урок 27. 00:03:50
    gem devise for authentication (log in, log out)
  28. Урок 28. 00:04:28
    course belong_to user - relationships
  29. Урок 29. 00:01:04
    design for notification messages
  30. Урок 30. 00:02:21
    adding a functional navbar
  31. Урок 31. 00:01:19
    search field in navbar
  32. Урок 32. 00:14:45
    styling courses and home index
  33. Урок 33. 00:06:14
    gem friendly_id - show user friendly links
  34. Урок 34. 00:08:01
    devise trackable (track user IP address, create users index page
  35. Урок 35. 00:06:22
    devise confirmable in development pt1
  36. Урок 36. 00:01:42
    devise confirmable in development pt2
  37. Урок 37. 00:05:22
    sendgrid - send emails in production
  38. Урок 38. 00:10:12
    Amazon SES - better way to send emails in production
  39. Урок 39. 00:15:59
    add more fields to courses
  40. Урок 40. 00:04:48
    gem ransack - level 1 - filter and search data in a table
  41. Урок 41. 00:13:28
    gem ransack - level 2 - search and filter courses
  42. Урок 42. 00:05:48
    gem ransack level 3 - search in navbar
  43. Урок 43. 00:08:20
    gem public_activity - track all actions in the app
  44. Урок 44. 00:06:46
    add a footer
  45. Урок 45. 00:00:26
    promo - roles & authorization
  46. Урок 46. 00:08:53
    gem rolify - add roles to users
  47. Урок 47. 00:05:17
    gem rolify - edit user roles
  48. Урок 48. 00:02:22
    gem rolify - using role based access
  49. Урок 49. 00:04:21
    gem pundit - installation and example usecase
  50. Урок 50. 00:02:26
    gem pundit - authorization for courses
  51. Урок 51. 00:02:41
    gem pundit - only admin can edit other users
  52. Урок 52. 00:02:40
    gem pundit - user can see links only to allowed actions
  53. Урок 53. 00:04:34
    gem friendly_id for users, user show
  54. Урок 54. 00:03:56
    check if user is online
  55. Урок 55. 00:11:21
    add a Lessons table, friendly_id, styling
  56. Урок 56. 00:02:49
    public_activity for Lessons, create lessons inside courses
  57. Урок 57. 00:02:52
    action_text for Lessons, add breadcrumbs for lesson show
  58. Урок 58. 00:06:16
    gem pundit - authorization for Lessons
  59. Урок 59. 00:07:55
    nested resources. lessons in courses
  60. Урок 60. 00:04:11
    gem pundit - authorization for Lessons create action
  61. Урок 61. 00:02:28
    minor styling for edit and new views
  62. Урок 62. 00:02:14
    production - tour around heroku
  63. Урок 63. 00:03:27
    gem exception_notification - catch errors in production
  64. Урок 64. 00:09:22
    design for courses and lessons
  65. Урок 65. 00:07:39
    gem pagy for pagination
  66. Урок 66. 00:08:13
    add dynamic title to page tabs
  67. Урок 67. 00:15:18
    scaffold Enrollments. Basic validation and design
  68. Урок 68. 00:21:33
    Button for user to Enroll to a Course
  69. Урок 69. 00:03:58
    gem pundit for Enrollments
  70. Урок 70. 00:02:17
    gem pundit - user can access his purchased Courses
  71. Урок 71. 00:16:40
    work on Enrollment views
  72. Урок 72. 00:08:33
    Button for user to Review a Course
  73. Урок 73. 00:03:40
    gem pagy for Enrollments and Users
  74. Урок 74. 00:02:02
    gem friendly_id for enrollments
  75. Урок 75. 00:07:15
    gem ransack for enrollments index
  76. Урок 76. 00:10:40
    Navigation for student, teacher, admin
  77. Урок 77. 00:18:26
    Collections and Scopes + Ransack + Pagy for Courses and Enrollments
  78. Урок 78. 00:05:21
    Counters in header
  79. Урок 79. 00:10:59
    Calculate rating for courses
  80. Урок 80. 00:06:02
    counter_cache basics (enrollments_count for Course)
  81. Урок 81. 00:12:48
    add counter_cache across app
  82. Урок 82. 00:09:10
    More course styling and validation
  83. Урок 83. 00:03:09
    Courses index ransack sort by price, populararity, rating, newest
  84. Урок 84. 00:08:48
    Dynamic & Personalized Homepage (Popular, New, Top Rated Courses)
  85. Урок 85. 00:05:50
    Move logic from controller to model using scopes
  86. Урок 86. 00:11:43
    UserCourse table - track if a user has seen a lesson. Migration and setup
  87. Урок 87. 00:08:57
    Track User progress in a Course
  88. Урок 88. 00:19:41
    Styling courses and lessons
  89. Урок 89. 00:01:43
    Pluralization for course show
  90. Урок 90. 00:04:17
    Validation for Destroy with dependent records (restrict_with_error, nullify,
  91. Урок 91. 00:06:24
    Lesson show - navigation between lessons in a course
  92. Урок 92. 00:12:46
    gem chartkick and groupdate - add charts
  93. Урок 93. 00:06:09
    load charts without timeouts
  94. Урок 94. 00:03:44
    namespace charts in routes, group by sum
  95. Урок 95. 00:05:45
    count impressions with increment method
  96. Урок 96. 00:21:02
    custom buttons to publish or approve a course
  97. Урок 97. 00:03:42
    complex validation who can see a course show
  98. Урок 98. 00:08:44
    gem public_activity - polymorphic links with nested resources
  99. Урок 99. 00:04:28
    application_helper for conditional styling
  100. Урок 100. 00:03:12
    gem rails-erd to generate relationship-diagrams automatically
  101. Урок 101. 00:03:52
    better views for not logged in users
  102. Урок 102. 00:04:03
    link_to courses with ransack search params
  103. Урок 103. 00:10:47
    course-specific charts and analytics, more advanced grouping
  104. Урок 104. 00:04:10
    update course_policy and view
  105. Урок 105. 00:00:18
    promo - sort records
  106. Урок 106. 00:03:44
    gem ranked_model - give lessons inside a course a number
  107. Урок 107. 00:03:08
    link to previous and next lesson in lesson show
  108. Урок 108. 00:11:14
    jquery-ui sortable - make lessons sortable and persist changes
  109. Урок 109. 00:00:23
    promo - active_storage & action_text
  110. Урок 110. 00:06:08
    credentials and secret keys PART 1
  111. Урок 111. 00:16:52
    gem aws-sdk-s3, configure aws s3 bucket storage, add avatar to courses
  112. Урок 112. 00:10:11
    gem active_storage_validations. validates course avatar. display avatar in co
  113. Урок 113. 00:04:08
    gem image_processing to fix action_text displaying images, S3 bucket CORS set
  114. Урок 114. 00:01:42
    credentials and secret keys PART 2 - PRODUCTION
  115. Урок 115. 00:09:36
    action_text attachment restrictions, download and display
  116. Урок 116. 00:10:18
    action_text restrict attachments, more validations for course and lesson
  117. Урок 117. 00:07:15
    video attachment and preview with active_storage and HTML5
  118. Урок 118. 00:06:53
    styling lessons, video validation
  119. Урок 119. 00:06:51
    deleting attachments (video and video_thumbnail)
  120. Урок 120. 00:04:35
    action_text - allow file upload, add video preview to blob
  121. Урок 121. 00:02:30
    action_text - play audio with HTML5
  122. Урок 122. 00:05:57
    video.js player integration
  123. Урок 123. 00:02:22
    simple_form for rich_text_area (actiontext)
  124. Урок 124. 00:06:53
    action_text youtube embeds
  125. Урок 125. 00:00:24
    promo - nested comments
  126. Урок 126. 00:26:30
    nested resources - comments inside lessons
  127. Урок 127. 00:16:51
    counter_cache for comments, method to delete comment
  128. Урок 128. 00:04:59
    public_activity for comments
  129. Урок 129. 00:03:11
    pundit authorization for destroying a comment
  130. Урок 130. 00:04:22
    add counter_cache for user_lessons to lessons and users
  131. Урок 131. 00:00:23
    promo - preparing for production
  132. Урок 132. 00:06:32
    gem recaptcha with devise - no bot signups
  133. Урок 133. 00:02:30
    add recaptcha keys to credentials
  134. Урок 134. 00:07:10
    add google analytics
  135. Урок 135. 00:09:49
    styling app, adding logo and thumbnail
  136. Урок 136. 00:01:35
    downgrade jquery to 3.4.1 to make bootstrap navbar dropdown work on small screen
  137. Урок 137. 00:02:28
    yarn remove video.js - remove library from our app
  138. Урок 138. 00:04:57
    connecting a domain to our application in production
  139. Урок 139. 00:02:16
    disable video download (disable rightclick on video)
  140. Урок 140. 00:03:40
    privacy_policy and SEO tags
  141. Урок 141. 00:01:36
    adding a licence to our github repository
  142. Урок 142. 00:12:04
    beautify devise views
  143. Урок 143. 00:05:38
    Add a sitemap for Google and Bing search
  144. Урок 144. 00:00:31
    promo - social login
  145. Урок 145. 00:11:20
    gem omniauth-google-oauth2 - log in with google
  146. Урок 146. 00:08:48
    import omniauth user personal data
  147. Урок 147. 00:04:15
    gem omniauth-github - log in with github
  148. Урок 148. 00:05:53
    different credentials for different environments. Github
  149. Урок 149. 00:10:09
    gem omniauth-facebook - log in with facebook
  150. Урок 150. 00:04:44
    refactor omniauth (clean up code)
  151. Урок 151. 00:00:59
    promo - select or create with selectize-js
  152. Урок 152. 00:15:33
    selectize.js - course has many tags through course_tags
  153. Урок 153. 00:11:11
    two ways to search courses by tags with ransack
  154. Урок 154. 00:03:17
    link to current page with params (for searching tags)
  155. Урок 155. 00:04:55
    selectize.js - select or create tag
  156. Урок 156. 00:15:23
    admin can manage and delete tags
  157. Урок 157. 00:06:24
    list similar courses in course show based on tags
  158. Урок 158. 00:00:37
    promo - PDF generation
  159. Урок 159. 00:08:31
    gem wicked_pdf - ability to generate PDF from HTML
  160. Урок 160. 00:07:20
    enrollment completion certificate and styling
  161. Урок 161. 00:05:06
    pdf.html - remove unused code, enrollments index - link to certificate
  162. Урок 162. 00:03:26
    different pdf gem for development and production
  163. Урок 163. 00:04:35
    styling pdf certificate of completion
  164. Урок 164. 00:04:56
    certificate of completion only for completed courses
  165. Урок 165. 00:08:23
    helper logic to view certificate of completion
  166. Урок 166. 00:00:19
    promo - multistep forms
  167. Урок 167. 00:20:41
    gem wicked for multistep forms
  168. Урок 168. 00:05:45
    gem wicked - nest course_wizard inside courses
  169. Урок 169. 00:08:11
    gem wicked - edit and update functionality
  170. Урок 170. 00:05:30
    gem wicked - styling and authorization
  171. Урок 171. 00:06:09
    layout for wizard steps, remove course edit action
  172. Урок 172. 00:09:57
    styling wizard progress navigation, remove fields course form
  173. Урок 173. 00:11:46
    email confirmation when a user enrolled to a course
  174. Урок 174. 00:05:41
    email to teacher when a user enrolls to his course
  175. Урок 175. 00:05:50
    user_mailer - send all admins emails when a new user registers
  176. Урок 176. 00:12:50
    install gem cocoon. edit lessons in course form
  177. Урок 177. 00:20:23
    payments - business logic for user income and expenses calculation
  178. Урок 178. 00:15:17
    payments with stripe part 1
  179. Урок 179. 00:10:19
    payments with stripe part 2
  180. Урок 180. 00:02:59
    Upgrading to Rails EDGE and troubleshooting active_storage issues
  181. Урок 181. 00:03:35
    downgrading Rails and fixing selectize issues
  182. Урок 182. 00:02:40
    downgrading Rails and fixing active_storage issues
  183. Урок 183. 00:02:09
    Update to rails 6.0.3
  184. Урок 184. 00:05:18
    renaming a column (short- to marketing- description)
  185. Урок 185. 00:05:57
    gem public_activity for user
  186. Урок 186. 00:03:09
    footer always on bottom
  187. Урок 187. 00:08:41
    gem sitemap_generator, edit robots.txt
  188. Урок 188. 00:07:55
    sitemaps working on heroku with AWS S3 public repo
  189. Урок 189. 00:14:26
    Run the Corsego source code in development
  190. Урок 190. 00:04:48
    Roadmap. Next steps.
  191. Урок 191. 00:00:30
    Thank you