Last active
October 19, 2024 12:55
-
-
Save yshmarov/758a04798c3400cf125de27659dab43e to your computer and use it in GitHub Desktop.
Ruby on Rails 6: Learn 25+ gems and build a Startup MVP 2020
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# All AWS C9 envments | |
https://eu-central-1.console.aws.amazon.com/cloud9/home?region=us-east-1 | |
# Instance management | |
https://console.aws.amazon.com/ec2/home?region=eu-central-1#Instances:sort=instanceId | |
# Create AWS C9 environment | |
https://eu-central-1.console.aws.amazon.com/cloud9/home/create | |
Setting - set tabs to 2 | |
Ctrl+E to search file | |
Alt+T - new terminal | |
Alt+W - close current tab | |
Ctrl+] - next tab | |
Ctrl+[ - prev tab | |
Ctrl+D - delete current line of code | |
Increase AWS storage size | |
https://docs.aws.amazon.com/cloud9/latest/user-guide/move-environment.html#move-environment-resize | |
//clean webpacker | |
bin/rails webpacker:clean | |
bin/rails tmp:clear | |
bin/rails log:clear |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# install latest version of Ruby, Rails, Postgresql, Yarn, Webpacker | |
rails -v | |
ruby -v | |
rvm list | |
rvm install ruby-2.7.2 | |
rvm --default use 2.7.2 | |
rvm uninstall 2.7.1 | |
rvm uninstall 2.7.0 | |
rvm uninstall 2.6.3 | |
rvm uninstall 2.6.5 | |
gem install rails -v 6.0.3.4 | |
gem update rails | |
gem update --system | |
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - | |
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list | |
sudo apt update | |
sudo apt install postgresql libpq-dev redis-server redis-tools yarn | |
ruby -v | |
rails -v | |
pg_config --version |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# create rails app | |
rails new myappname --database=postgresql | |
cd myappname | |
bundle | |
yarn | |
# postgresql setup | |
sudo su postgres | |
createuser --interactive | |
ubuntu | |
y | |
exit | |
# to make the server work, add the url to development.rb | |
config.hosts << "2b8c1faf3a934c25b7e01d446161bfff.vfs.cloud9.us-east-1.amazonaws.com" | |
# start server | |
rails db:create | |
rails db:migrate | |
rails s |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#Ruby on Rails | |
rvm install ruby-2.7.1 | |
rvm --default use 2.7.1 | |
rvm uninstall 2.6.5 | |
rvm uninstall 2.6.6 | |
rvm uninstall 2.6.3 | |
gem install rails -v 5.2.4.3 | |
#Postgresql | |
sudo apt install postgresql libpq-dev | |
sudo su postgres | |
createuser --interactive | |
ubuntu | |
y | |
exit |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
http://github.com/ | |
git config --global user.name "Yaro" | |
git config --global user.email [email protected] | |
git init | |
git status | |
git add -A | |
git commit -m 'initialize app' | |
# https://github.com/new | |
git remote add origin https://github.com/yshmarov/rubygems.git | |
git push -u origin master | |
// delete last commit from github | |
git reset HEAD^ --hard | |
git push -f | |
// git uncheck last commit | |
git reset --soft HEAD~1 | |
// git reset to specific commit | |
git reset --hard c14809fa | |
// forward-moving undo last commit | |
git revert HEAD | |
git add -A | |
git commit -m 'undo last commit' | |
// forward-moving undo commit-before-last-commit | |
git revert HEAD~1 | |
git add -A | |
git commit -m 'undo commit-before-last-commit' | |
//check to which repo you are connected | |
git remote -v | |
//set remote repo | |
git remote set-url origin https://github.com/yshmarov/edurge.git | |
Git branches: | |
//Create branch | |
git checkout -b "i18n" | |
//Show all branches: | |
git branch | |
//Switch to master | |
git checkout master | |
//Merge "i18n" with master | |
git merge i18n | |
//Delete "i18n" branch | |
git branch -D i18n | |
//pull remote branch | |
git fetch origin stripe2 | |
git checkout -b stripe2 origin/stripe2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
http://heroku.com/ | |
# creating the first page | |
rails g controller home index | |
# Add the following line to routes.rb | |
root 'home#index' | |
git add -A | |
git commit -m 'add home index controller' | |
# installing heroku | |
npm uninstall -g heroku-cli | |
sudo snap install heroku --classic | |
npm install -g heroku | |
heroku create | |
heroku buildpacks:add heroku/ruby | |
git remote -v | |
git push heroku master | |
heroku run rake db:migrate | |
# if you want to connect to an existing heroku app | |
heroku git:remote -a yourappnamegoeshere | |
# see logs | |
heroku logs --tail | |
# to run console activerecord commands | |
heroku run rails c | |
# restart | |
heroku restart | |
# log into heroku from console | |
heroku login -i | |
# clone app from heroku to local | |
heroku git:clone -a bobablack |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
https://edgeguides.rubyonrails.org/action_text_overview.html | |
// Console | |
rails action_text:install | |
// application.js | |
require("trix") | |
require("@rails/actiontext") | |
// actiontext.scss | |
@import "trix/dist/trix"; | |
// application.scss | |
@import "./actiontext.scss"; | |
// app/models/course.rb | |
class Course < ApplicationRecord | |
has_rich_text :description | |
end | |
// app/views/courses/_form.html.erb | |
<%= f.label :description %> | |
<%= f.rich_text_area :description %> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// application.html.haml | |
= render 'layouts/messages' | |
// _messages.html.haml | |
- flash.each do |name, msg| | |
- if msg.is_a?(String) | |
%div{:class => "alert alert-#{name.to_s == 'notice' ? 'success' : 'danger'}", :role => "alert"} | |
%button.close{"aria-hidden" => "true", "data-dismiss" => "alert", :type => "button"} × | |
= content_tag :div, msg, :id => "flash_#{name}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CREATE CREDENTIALS & EDIT | |
rails credentials:edit | |
EDITOR=vim rails credentials:edit | |
WORKING WITH VIM | |
For inserting | |
Press i //Do required editing | |
For exiting | |
Press Esc | |
:wq //for exiting and saving | |
:q! //for exiting without saving | |
FIND A CREDENTIAL | |
rails c | |
Rails.application.credentials.dig(:aws, :access_key_id) | |
or if an env variable is used | |
Rails.application.credentials[Rails.env.to_sym][:aws][:access_key_id] | |
In production: | |
heroku config:set RAILS_MASTER_KEY=123456789 | |
or | |
heroku config:set RAILS_MASTER_KEY=`cat config/master.key` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// courses_controller.rb | |
def index | |
if params[:name] | |
@courses = Course.published.approved.where('name ILIKE ?', "%#{params[:name]}%") #case-insensitive | |
#@courses = Course.where('name LIKE ?', "%#{params[:name]}%") #case-sensitive | |
#@courses = Course.where('LOWER(name) LIKE LOWER(?)', "%#{params[:name]}%") #make lowercase | |
else | |
@courses = Course.published.approved.all | |
end | |
end | |
// in any view: | |
.form-inline.my-2.my-lg-0 | |
= form_tag(posts_path, method: :get) do | |
.input-group | |
= text_field_tag :name, params[:name], autocomplete: 'off', placeholder: "Find a post", class: 'form-control-sm' | |
%span.input-group-append | |
%button.btn.btn-primary.btn-sm{:type => "submit"} | |
%span.fa.fa-search{"aria-hidden" => "true"} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//inline elsif | |
vote_text = current_user&.voted_for?(@post) ? "No" : "Yes" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// gemfile: | |
gem 'wicked_pdf' #PDF for Ruby on Rails | |
gem 'wkhtmltopdf-binary', group: :development | |
gem 'wkhtmltopdf-heroku', group: :production | |
config/wicked_pdf.rb | |
WickedPdf.config ||= {} | |
WickedPdf.config.merge!({ | |
#YOUR CONFIG HERE | |
}) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
brakeman -I