Ultimamente tenho ficado em dúvida sobre o futuro das linguagens em relação a mercado de trabalho, eu trabalho atualmente com NodeJS mas sinto que a linguagem está se reproduzindo como coelho em termos de desenvolvedores aprendendo ela e por causa da lei de oferta do mercado tende a se pagar menos e etc e não estou muito contente com a linguagem em si. Mas tenho dúvida de qual linguagem escolher para conseguir melhores salários e qual deve crescer mais a longo prazo. Linguagens que eu vi para Web: Go, Elixir, Ruby e Rust.
Alguém tem alguma ideia de qual pode ser uma boa linguagem para focar o aprendizado?
Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
Obrigado e contamos com você.
Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
Obrigado e contamos com você.
Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
Obrigado e contamos com você.
Estes são os arquivos principais do projeto em ruby on rails:
routes.rb:
Rails.application.routes.draw do
root to: 'recipes#index'
resources :recipes
resources :recipe_types
end
recipe_type.rb:
class RecipeType < ApplicationRecord
has_many :recipes
end
recipe.rb:
class Recipe < ApplicationRecord
validates :title, :recipe_type, :cuisine, :difficulty, :cook_time,
:ingredients, :cook_method, presence: true
belongs_to :recipe_type
def cook_time_min
"#{cook_time} minutos"
end
end
create_recipes.rb:
class CreateRecipes < ActiveRecord::Migration[5.2]
create_table :recipe_types do |t|
t.string :name
t.timestamps
end
def change
create_table :recipes do |t|
t.string :title
t.string :recipe_type
t.string :cuisine
t.string :difficulty
t.integer :cook_time
t.belongs_to :recipe_type
t.timestamps
end
end
end
create_recipe_type.rb:
class CreateRecipeTypes < ActiveRecord::Migration[5.2]
def change
create_table :recipe_types do |t|
t.string :name
t.timestamps
end
create_table :recipes do |t|
t.string :title
t.string :recipe_type
t.string :cuisine
t.string :difficulty
t.integer :cook_time
t.belongs_to :recipe_type
t.datetime :published_at
t.timestamps
end
end
end
recipes_controller.rb:
class RecipesController < ApplicationController
def index
@recipes = Recipe.all
end
def show
@recipe = Recipe.find(params[:id])
end
def new
@recipe = Recipe.new
end
def create
@recipe = Recipe.new(recipe_params)
if @recipe.save
redirect_to @recipe
else
flash[:alert] = 'Você deve informar todos os dados da receita'
render :new
end
end
def edit
@recipe = Recipe.find(params[:id])
end
def update
@recipe = Recipe.find(params[:id])
if @recipe.update(recipe_params)
redirect_to @recipe
else
flash[:alert] = 'Você deve informar todos os dados da receita'
render :edit
end
end
private
def recipe_params
params.require(:recipe).permit(:title, :recipe_type, :cuisine, :difficulty,
:cook_time, :ingredients, :cook_method)
end
end
index.html.erb:
<h1>CookBook</h1>
<p>Bem-vindo ao maior livro de receitas online</p>
<%= link_to 'Enviar uma receita', new_recipe_path %>
<% @recipes.each do |recipe| %>
<h1><%= link_to recipe.title, recipe %></h1>
<ul>
<li><%= recipe.recipe_type %></li>
<li><%= recipe.cuisine %></li>
<li><%= recipe.difficulty %></li>
<li><%= recipe.cook_time_min %></li>
</ul>
<% end %>
Passo o seguinte comando rspec especificamente em visitor_visit_homepage_spec.rb linha 11:
:~/workspace/cookbook_parte7$ rspec ./spec/features/visitor_visit_homepage_spec.rb:11
Run options: include {:locations=>{"./spec/features/visitor_visit_homepage_spec.rb"=>[11]}}
Visitor visit homepage
and view recipe (FAILED - 1)
Failures:
1) Visitor visit homepage and view recipe
Failure/Error:
recipe = Recipe.create(title: 'Bolo de cenoura', difficulty: 'Médio',
recipe_type: recipe_type, cuisine: 'Brasileira',
cook_time: 50,
ingredients: 'Farinha, açucar, cenoura',
cook_method: 'Cozinhe a cenoura, corte em pedaços pequenos, misture com o restante dos ingredientes')
ActiveModel::MissingAttributeError:
can't write unknown attribute `recipe_type_id`
# ./spec/features/visitor_visit_homepage_spec.rb:14:in `block (2 levels) in <top (required)>'
Finished in 0.04808 seconds (files took 1.72 seconds to load)
1 example, 1 failure
Failed examples:
rspec ./spec/features/visitor_visit_homepage_spec.rb:11 # Visitor visit homepage and view recipe
E depois de fazer as mudanças nos arquivos recipe.rb e create_recipe.rb, executei o seguinte comando novamente:
$ rails db:migrate RAILS_ENV=test
Ao baixar o repositório na máquina, dei os seguintes comandos: