ΠΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠ΅ΡΡΡΡΠ° Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠ° Devise User
Active Admin ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠ°ΡΠΎΠ»ΠΈ, Π² Π²ΡΠ²ΠΎΠ΄ CSV, Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ.
Π₯ΠΎΡΡ ΡΠ°ΠΌΠ° Devise
Π§ΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠ°ΡΠΊΡΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ
, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΡΡΠ° Π±Π»ΠΎΠΊ csv
.
Π₯ΠΎΡΡ Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ ΠΈ ΠΊ HTML-ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ ΡΠΎΡΠΊΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΏΡΠΎΡΠ΅ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ.
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ. Π― Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π», ΡΡΠΎ ΠΌΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΠΊΡΠΏΠΎΡΡ (CSV, JSON ΠΈ XML). ΠΡΠΎ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ / Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ ΠΎ ΠΌΠΎΠ΄Π΅Π»ΡΡ Ρ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ.
Π― ΠΎΠ±Π΅Π·ΡΡΠ½Π° ΠΈΡΠΏΡΠ°Π²ΠΈΠ» ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΡΡΠΎΠ±Ρ Π·Π°ΠΊΡΡΡΡ, Π° Π½Π΅ ΠΎΡΠΊΡΡΡΡ. ΠΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ CSV, Π½ΠΎ ΡΠΊΡΠΏΠΎΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΡΡΠΎ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ
module ActiveAdmin
class CSVBuilder
def self.default_for_resource(resource)
new resource: resource do
column :id
column "Name" do |res|
display_name(res)
end
end
end
end
end
Π― ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π·Π°ΠΊΡΡΡΠΎ, Π° Π½Π΅ ΠΎΡΠΊΡΡΡΠΎ, ΡΠΊΡΠΏΠΎΡΡ Active Admin Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΡΠ»ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ, ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΡΠ»Π°Π³ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ Π²ΠΎΠ·Π²ΡΠ°Ρ.