Ich habe ein kleines Problem mit meinem Code, und ich sehe nie diese Art von Fehler, ich mache eine zweite Seite, um meinen Beitrag zu bearbeiten (zB wie eine Profilseite mit Gerät). Also, wenn ich einen Beitrag bearbeiten möchte, ist es immer der erste Post meiner db, der die Änderungsinformationen übernimmt.Fehler beim Hochladen meiner db
Also wenn Sie sehen können, welche schrecklichen Fehler ich mache, wird es erstaunlich sein !!
Routes:
Rails.application.routes.draw do
get 'pushs/show'
get 'pushs/edit'
get 'profiles/show'
mount RailsAdmin::Engine => '/admin', as: 'rails_admin'
devise_for :users, :controllers => { registrations: 'registrations' }
resources :posts do
resources :comments
end
get ':pseudo', to: 'profiles#show', as: :profile
get ':pseudo/edit', to: 'profiles#edit', as: :edit_profile
patch ':pseudo/edit', to: 'profiles#update', as: :update_profile
get 'push/:post_id', to: 'pushs#show', as: :push
get 'push/:post_id/edit', to: 'pushs#edit', as: :edit_push
patch 'push/:post_id/edit', to: 'pushs#update', as: :update_push
root 'posts#index'
Push-Controller:
class PushsController < ApplicationController
before_action :authenticate_user!
before_action :set_push
def show
@post = Post.find_by(params[:post_id])
end
def edit
end
def update
if @post.update(push_params)
flash[:success] = 'Your profile has been updated.'
redirect_to root_path
else
@post.errors.full_messages
flash[:error] = @post.errors.full_messages
render :edit
end
end
private
def push_params
params.require(:post).permit(:prix, :portion)
end
def owned_push
@post = Post.find_by(params[:id])
unless current_user == @post.user_id
flash[:alert] = "That prost doesn't belong to you!"
redirect_to root_path
end
end
def set_push
@post = Post.find_by(params[:id])
end
end
Bearbeiten Ansichten (push)
<h1>Mettre le Plat en ligne :</h1>
<div class="posts-wrapper">
<div class="post">
<div class="post-body">
<div class="image-wrap">
<%= form_for @post, url: {action: "update"}, html: { multipart: true } do |f| %>
<div class="row">
<div class="col-md-12">
<div class="form-group text-center">
<h4>prix</h4>
<%= f.text_area :prix %>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group text-center">
<h4>portion</h4>
<%= f.text_area :portion %>
</div>
</div>
</div>
<div class="form-group text-center">
<%= f.submit "Update Post", class: 'btn btn-success' %>
</div>
<% end %>
</div>
</div>
</div>
</div>
Wenn Sie mehr sehen wollen, können Sie meinen Code auf Github überprüfen: https://github.com/Mesnet/Beta0.1
Bitte schreiben Sie die Fehlermeldung. – toddmetheny
Es gibt keine Fehlermeldung, ist nur, dass wenn ich versuche, diesen Teil des Beitrags zu ändern, diese Änderung zu meinem ersten DB-Post hinzugefügt wird. Während ich möchte, dass diese Änderung auf den Beitrag –
angewendet wird, können Sie den Params-Hash posten? – toddmetheny