sql >> Database teknologi >  >> RDS >> PostgreSQL

Array er ikke persisteret til databasen

I dine stærke parametre bliver du nødt til at tillade :vehicles attribut som et array, som dette:vehicles: []

Jeg er ikke sikker på, hvilken version af Devise du bruger, men jeg tegner fra deres dokumentation , i afsnittet "stærke parametre" kunne du tillade vehicles sådan i applikationscontrolleren:

def configure_permitted_parameters
  devise_parameter_sanitizer.permit(:sign_up) do |student_params|
    student_params.permit({ vehicles: [] }, :email, :password, :password_confirmation)
  end
end

Hvis du bruger Postgres-databasen, anbefaler jeg også at konfigurere dine vehicles attribut for at modtage et array direkte i databasen. Du kan gøre det med en migrering som denne:

class AddArrayToStudents < ActiveRecord::Migration
  def change
    add_column :students, :vehicles, :string, array: true, default: []
  end
end



  1. Forespørgselshastighed baseret på rækkefølgen af ​​kolonner

  2. Hvordan konverteres dato til tidsstempel (DD-MON-YYYY HH24:MI:SS.FF format) i oracle?

  3. Laravel sorterer resultater efter specifikke værdier

  4. Hvordan bruger du variabler i et simpelt PostgreSQL-script?