¿Por qué se crean automáticamente las entradas de la base de datos cuando visito la página "nueva"?
Tengo problemas para entender por qué mi aplicación crea entradas automáticamente en la base de datos cuando visito la página "nueva". Se supone que la página tiene un formulario que, cuando se envía, luego ysolament luego crea entradas en la base de datos (SQLite3).
Controlador
class RecipeController < ApplicationController
def index
@recipes = Recipe.all
end
def new
@recipe = Recipe.create(params[:recipe])
if @recipe.save
redirect_to recipe_new_path
else
reload_page
end
end
def create
@recipe = Recipe.new
end
def show
end
def update
end
def destroy
end
private
def recipe_params
recipe_params = params.require(:recipes)
end
end
La vista
<!DOCTYPE html>
<html>
<body>
<h1>Add a recipe</h1>
<%= form_for @recipe do |f| %>
<%= f.label :name, "Recipe Name:" %>
<%= f.text_field :name %>
<br>
<%= f.label :recipe, "Recipe Description:" %>
<%= f.text_field :recipe %>
<br>
<%= f.submit %>
<% end %>
</body>
</html>
rchivo @Routes:
Rails.application.routes.draw do
get 'recipe' => 'recipe#index'
get 'recipe/new' => 'recipe#new'
post 'recipe/create' => 'recipe#create'
post 'recipes' => 'recipe#create'
resources :recipes
get 'recipe/:id' => 'recipe#show'
get 'recipe/update' => 'recipe#update'
get 'recipe/destroy' => 'recipe#destroy'
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end