Quando o post acontece, vejo no console um 404 Not found,
No navegador, após o post vejo: uninitialized constant Produtos Rails.root: C:/Sites/lojadecamisetas
Na saída do rake routes, tenho
Prefix Verb URI Pattern Controller#Action
produtos POST /produtos(.:format) produtos/#create
produtos_new GET /produtos/new(.:format) produtos#new
GET /produtos(.:format) produtos#index
root GET / produtos#index
produtos_controller.rb
class ProdutosController < ApplicationController
def index
@produtos = Produto.order(:preco).limit 2
end
def create
#usar simbolo economiza memoria por não gerar a string em memória
valores = params.require(:produto).permit!
produtos = Produto.create valores
end
end
routes.rb
Rails.application.routes.draw do
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
post "produtos" => "produtos/#create"
get "produtos/new" => "produtos#new"
get "produtos" => "produtos#index" #default não precisaria definir esta rota
root "produtos#index"
end
new.html.erb
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<%= form_for Produto.new do |f| %>
Nome <input type="text" name="produto[nome]"><br/>
Descrição
<textarea name="produto[descricao]"></textarea></br>
Quantidade
<input type="numer" name="produto[quantidade]"></br>
Preço
<input type="number" name="produto[preco]" step="0.01"/><br/>
<button type="submit">Criar</button>
<% end %>
</body>
</html>
Mais uma coisa, aproveitando, edição da pergunta aqui está com bug, ele corta vários caracteres no final da pergunta quando edito. :D