Module CGI en Ruby de recherche web - partie 2

Posté le 2006-08-28

Une autre partie du module de recherche CGI en langage Ruby, le programme d'appel, appelé à partir d'un formulaire HTML. Le formulaire de recherche ressemble à ceci :

<form action="/cgi-bin/cgi_look_for.rb">
  <input type="text" name="expr" />
  <input type="submit" value="Rechercher" />
</form>

Le programme ruby /cgi-bin/cgi_look_for.rb récupère la chaine de recherche expr du formulaire et va chercher dans le fichier index index_tuxcoffee.txt les fichiers répondants à cette expression.

require 'erb'
require 'cgi'
require 'words_with_files_in_index'

cgi = CGI.new("html4Tr")

# Get cgi entry parameter
expr = cgi['expr']

template = ""
File.open("./template_search_result.erb", "r") do |file|
  file.each_line { |line| template += line }
end

rhtml = ERB.new(template)

# setup the template data
words_with_files = WordsWithFilesInIndex.new("./index_tuxcoffee.txt", expr)

# Produce result.
out = rhtml.result(words_with_files.get_binding)

# HTML view
cgi.out { out }

Un article complet, ainsi que l'archive de tous les scripts et classes Ruby du module CGI de recherche seront bientôt disponible.

Envoyer un commentaire

Commentaire et infos