Я новичок в ruby on rails и думаю, что мне чего-то не хватает, когда дело доходит до изменения значений статьи, называемой назначением, в базе данных. Я перечислю соответствующие фрагменты кода.
У меня настроена страница администратора, на которой перечислены все запланированные встречи пользователей со ссылкой для редактирования рядом с каждой, которая ведет меня на правильные встречи / id # / страницу редактирования. Страница администратора в просмотрах:
<div align="center">
<div class="col-md-6">
<div class="card">
<h5 class="card-header">All Scheduled Appointments</h5>
<div class="card-body">
<%@appointments.each do | appt |%>
<%="Appointment for #{appt.owner_email} on #{appt.date} in the #{appt.time}"%> <%= link_to 'Edit', edit_appointment_path(appt) %>
</br>
<%end%>
</div>
</div>
</div>
</div>
Файл assignments_controller.rb:
class AppointmentsController < ApplicationController
def edit
@appointment = Appointment.find(params[:id])
end
end
Страница редактирования, которая просто содержит параметры для администратора, чтобы выбрать желаемые даты / время с помощью кнопки отправки. Я хотел, чтобы администратор выбрал эти значения, чтобы обновить то, что пользователь предварительно настроил на них. Нажатие кнопки «Отправить» просто обновляет страницу и, похоже, больше ничего не делает. Файл edit.html.erb в представлениях:
<h1 align="center">Edit Existing Appointment</h1>
<form action="edit" method="refresh">
<div class="container-fluid">
<div class="row">
<div class="col-md-2">
<div class="form-group">
<label for="desiredDate">Desired Date</label>
<input type="date" class="form-control" id="desiredDate" aria-describedby="desiredDate" placeholder="" name="desiredDate">
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<label for="desiredTime">Desired Time</label>
<select class="form-control" id="desiredTime" name="desiredTime">
<option>Morning</option>
<option>Afternoon</option>
<option>Evening</option>
</select>
</div>
</div>
</div>
<div class="row">
<div class="col-md-4 offset-md-4 text-center">
<%= submit_tag "Submit", class:"btn btn-primary"%>
</div>
</div>
</form>
Мой код route.rb, если это поможет:
Rails.application.routes.draw do
devise_for :users
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
root 'welcome#index'
get '/services', to: 'welcome#services'
get '/about_us', to: 'welcome#about_us'
get '/schedule', to: 'welcome#schedule'
get '/new_car', to: 'welcome#new_car'
get '/my_profile', to: 'welcome#my_profile'
get '/admin', to: 'welcome#admin'
devise_scope :user do
get '/sign_up', to: 'devise/registrations#new'
get '/login', to: 'devise/sessions#new'
get '/logout', to: 'devise/sessions#destroy'
end
get '/appointments/edit', to: 'appointments#edit'
resources :cars
resources :appointments
end
Любые предложения будут оценены.