J'ai beaucoup appris sur les technologies Web récemment et je veux mettre en place un petit site Web pour jouer avec html, css, javascript, flash, et quoi d'autre.Ruby on Rails - pas groking
Je sais qu'en ce qui concerne le navigateur Web tout ce que je dois faire est d'envoyer un fichier texte (généralement HTML) à partir de mon serveur en utilisant HTTP sur TCP. J'ai déjà suivi quelques tutoriels Rails, mais j'ai beaucoup de mal à faire fonctionner les choses et à comprendre comment les composants fonctionnent ensemble, même si je pouvais le faire fonctionner en suivant aveuglément les tutoriels à l'adresse suivante: http://www.youtube.com/watch? lettre. Je pense que je comprends le concept MVC. De toute évidence, le modèle économique d'une application a du sens pour être séparé de la mise en œuvre de la vue, etc. Bien sûr, c'est bien. D'après ce que je comprends, RoR a besoin (?) D'une base de données. Bien sûr, quand mon site web grandit au point où j'ai besoin de suivre les clients et de croquer les données, je le veux.
Mais où puis-je trouver la fonctionnalité actuelle? Où puis-je spécifier comment mon serveur répond aux demandes des navigateurs? Cela ne devrait-il pas être simple? Ai-je besoin de créer une base de données juste pour obtenir ma page "Bonjour tout le monde"?
Je pense que ce qui pourrait arriver est que Rails est conçu pour faire quelque chose dont je n'ai pas besoin (encore?). Il fait beaucoup de choses pour moi que je ne comprends pas, et pour que je sois à l'aise, je devrais creuser beaucoup de matériel pour le comprendre.
Ce qui m'a amené à ce point, je suis à la recherche de la « prochaine étape » après ce petit serveur que je jouais avec:
require 'socket'
server = TCPServer.open(8080)
loop {
Thread.start(server.accept) do |client|
client.puts(Time.now.ctime) # server sends dynamic page consisting of current time
client.flush
while (str = client.gets) do
puts "recvd >> "+str # show what server gets from client
if str.chop.length == 0 then break end # detect end of transmission
end
puts "done"
client.close
end
}
Ce petit morceau de code est plus que la moitié du chemin à ce que je besoin de le faire. Je suis resté coincé sur quelque chose de plutôt idiot. Je ne sais toujours pas comment prendre un fichier sur le disque et l'envoyer au client. Je me dis que j'ouvrirais un flux vers le fichier demandé et que je le redirigerais vers le socket ... Aucune idée de comment le faire dans ruby. Alors j'ai pensé, hé, peut-être que Rails le ferait pour moi. Maintenant, je suis un tas de directions, enfin obtenir le serveur fonctionne sur mongrel, et j'essaie ceci: ruby script\generate controller MyTest
et toujours obtenir une "erreur de routage" quand je l'ouvre dans le navigateur. Je reçois une trace de pile moche géante sur la ligne de commande. J'en ai rien à faire! Il est clair que je devrais prendre un cours qui me montrera comment utiliser Rails et, plus important encore, si c'est excessif pour mes besoins. Alors ... dois-je continuer à essayer de comprendre? Si oui, quelqu'un peut-il me montrer un bon tutoriel, ou m'expliquer pourquoi les tutoriels que j'ai vus ne m'aident pas?
Devrais-je simplement utiliser EventMachine pour créer mon serveur? Je veux juste faire un joli serveur web simple et rapide.
Merci d'avoir lu. :)
Wow, lire et écrire. Ne pouvait pas être plus simple. Merci. –