2013-11-20 16 views
7

Ruby on Rails kullanıyorum ve kullanıcı girdisinden bilgi alan bir form var. Daha sonra kullanıcı girdisini alıp sunucu tarafında bir metin dosyasına yazmak istiyorum. Dosyayı /public/UserInput.txt gibi bir yere kaydetmeyi umuyorum.Bir Form Sunucusundan Bir Metin Dosyası Oluşturma Side Side on Rails

Bunu yapmak için Ruby on Rails'i kullanmanın bir yolu var mı? Ya da PHP gibi bunu yapmak için farklı bir dile ihtiyacım var mı? Her iki durumda da bana bunun nasıl yapıldığına dair bir örnek verebilir misiniz?

Şimdiden teşekkürler.

Güncelleme Bu da beni bir metin dosyası vermiyor çalışıyorum kodudur:

after_save :create_file 

def create_file 
parameter_file = File.new('C:\\parameter_file.txt', "w") 
parameter_file.puts(:parameter) 
end 
+1

Sunucunuzun bu dizine yazma izni var mı? Başka bir kullanıcı bir dosyayı kaydetmek istediğinde ve üzerine yazdığında ne olur? Neden 'open' veya daha basit bir şekilde 'File.write' blok şeklini kullanmıyorsunuz, bu yüzden dosya otomatik olarak kapatılıyor? Dosya tanıtıcısını kapatmamak, makinenizdeki tüm kullanılabilir dosya tanıtıcılarını tüketir ve kodunuzu kilitler. –

+0

İzin verildi bir şeydi, ama: – user2719805

cevap

16

Bu gerçekten bir raylar belirli sorun değildir. Düz yakutta ele alınabilir. Eğer formdan ayıklanması ne olursa olsun veri

path = "/some/file/path.txt" 
content = "data from the form" 
File.open(path, "w+") do |f| 
    f.write(content) 
end 
dosya gitmek istediğiniz yere target olduğunu

ve content olduğunu.

+0

formundan kullanıcı girdisi bana kullanıcı vermez Evet bunu gördüm, ama raylarda yakutla inşa edilmiş bir siteye nasıl dahil edebilirim? Bu kod görüş veya modelime girer mi? Yerleştirilecek yer konusunda kafam karıştı. – user2719805

+0

Modelinizde, tercihen. Bu tür bir kodu görünümde istemiyorsunuz. – yamafontes