Jx Random Quote

Any dramatic series the producers want us to take seriously as a representation of contemporary reality cannot be taken seriously as a representation of anything - except a show to be ignored by anyone capable of sitting upright in a chair and chewing gum simultaneously. -- Richard Schickel
Главная arrow Статьи
Статьи
Создаем croller (grabber) на РНР Версия в формате PDF Версия для печати Отправить на e-mail

 

Для того, чтобы сделать простой грабер или кролер, использую РНР нужно совсем немного: легкое знание самого РНР и поддержка cURL lib веб-сервером. Итак, приступаем к написанию кода.

В начале нужно создать РНР класс, который будет выполнять задачу по сбору данных.В нашем случае, кроллер будет собирать email адреса со веб-страниц в Иитернете. Задача вполне реальная и часто востребованная.:-)

Пишем:

 

 

  class EmailAgent {  //название класса

 

private $headers;  //cURL headers – переменная, которая будет содержать специальные //настройки  для работы cURL lib

private $agent;  //имя броузера,который будет эмулировать наш кроллер.

private $data; //полученные кроллером  данные,

private $template; //шаблон для настройки регулярных выражений

private $geturl; //URL веб –страницы,с которой будем получать данные

 

 
Создание файлов PDF файлов в приложениях Ruby on Rails Версия в формате PDF Версия для печати Отправить на e-mail
Динамическая генерация PDF файлов очень полезна, когда нужно создать файл отчета илисохранить данные в удобном виде. Для этого существует такой плагин в Ruby on Rails «pdf-writer». Итак, разберемся как с ним работать.
1.    Установим его в приложение. Для этого нужно ввести команду «gem install pdf-writer»
C:\myproject>gem install pdf-writer
Successfully installed pdf-writer-1.1.8
1 gem installed
Installing ri documentation for pdf-writer-1.1.8...
Installing RDoc documentation for pdf-writer-1.1.8...
2.  После установки, необходимо  отредактировать  файл «environment.rb»

И поместить в него такие строки:

require 'pdf/writer'

Mime::Type.register 'application/pdf', :pdf

Первая подключает  этот плагин  к  нашему приложению, а вторая устанавливает новый тип  данных Mime,  с которыми  оно будет работать.
3. На конец, самое главное,- собственно генератор PDF файлов в приложении. В файле app/controllers/application.rb  пишем вспомогательный метод:  

  def render_to_pdf(options = nil)
  data = render_to_string(options)
  pdf = PDF::HTMLDoc.new
  pdf.set_option :bodycolor, :white
  pdf.set_option :toc, false
  pdf.set_option :portrait, true
  pdf.set_option :links, false
  pdf.set_option :webpage, true
  pdf.set_option :left, '2cm'
  pdf.set_option :right, '2cm'
  pdf << data
  pdf.generate
  end

Этот метод  будет использоваться при генерировании PDF файл. Он принимает данные и превращает их в файл.
 

4.  Затем мы редактируем стандартный метод  «index» нашего приложения:

 def index
    @goods = Good.find(:all)
    respond_to do |format|
      format.html
      format.xml { head :ok }
      format.pdf { send_data render_to_pdf({ :action => 'index.rpdf', :layout => 'pdf_report' }) }
    end
  end

Здесь  мы организуем  форматирование  данных, получаемых из базы и перенапрваляем выход во вновь созданный вспомогательный метод «render_to_pdf».

5.  Далее изменим файл вида «index» и  вставим в него следующее:


<%= link_to 'PDF', formatted_goods_path(:pdf) %>

Линк вызывает метод контроллера для генерирования  PDF документа.


Это все. Теперь, когда пользователь нажмет на вышеуказанный линк, то он получит PDF файл.



 
Использование поискового движка Ferret в проектах Ruby on Rails. Версия в формате PDF Версия для печати Отправить на e-mail

Практически  любом web проекте сейчас используется поиск как стандартная опция. Мы научимся использовать механизм  полнотекстового поиска, который реализован в  Ruby on Rails в  плагине Ferret. Это делается очень просто и быстро. Итак, наши дальнейшие шаги будут такие:

 

1.       1. Устанавливаем в проект движок  с помощью такой команды в командной строке :

               gem install ferret

 

2.       2. Добавляем в класс  модели ActiveRecord , в которой и будет производиться поиск следующий код :

             class News < ActiveRecord::Base

            acts_as_ferret :fields => ['title','body']

            end

Этот код активизирует установленный плагин и  указывает поля в базе данных, которые буду использоваться для индексирования.

 

3.       3. Создаем простую форму поиска:

<%= start_form_tag({:action=> "search"}) %>

<b>Search:</b>

<%= text_field_tag :search  %>

<%= submit_tag (value = "Search", options = {}) %>

<%= end_form_tag%>

 

4.       4. В  классе контроллера создаем новый метод  «search»:

 

     class NewsController < ApplicationController

           def search

          query = params[:search]

          @results = News.find_by_contents(query)

          end

         end

 

5.       5. И на конец, еще один заключительный штрих – вывод результатов поиска:

 

        <h1>Search Results</h1>

        <% if @results %>

        <p>Your search:

 

         <p><%= params[:query] %></p>

     <%= @results.size %> Results:</p>

     <ul>

     <% @results.each { |result| %>

    <li><%= link_to result.title, :action => 'show', :id => result %></li>

    <% } %>

   </ul>

     <% end %>

 

Как видите, реализация поиска не отняла у нас слишком много времени. Подмигиваю

 
Использование FileColumn plugin для организации загрузки файлов на сервер в приложении Ruby on Rails Версия в формате PDF Версия для печати Отправить на e-mail

Многие веб приложения предоставляют пользователям возможность загрузки файлов. В Ruby on Rails с помощью архитектуры плагинов это можно организовать очень просто и быстро.

Итак, описываем наши дальнейшие шаги:

 
Перенос дампа базы данных в Sugar CRM. Версия в формате PDF Версия для печати Отправить на e-mail

Допустим, у нас есть   Sugar CRM  такая проблема: существует 2 инсталляции Sugar CRM,одна из которых старая, а другая новая версии. Нам необходимо перенести данные из старой базы данных MySQL  в новую версию  и сделать это аккуратно. Нет ничего проще.

1.       Создаем копию нужной нам базы данной, с помощью экспорта базы в SQL файл.

2.       В  новой инсталляции делаем новую базу данных.

3.       Импортируем  туда все данные из  полученного ранее дампа. Можно использовать любую работаю с MySQL программу или команду «source» в  командной строке.

4.       Редактируем PHP файл  «/config.php» : меняем имя базы данных, это переменная   'db_name ' в массиве 'dbconfig'.

5.       Далее открываем базу данных, находим там таблицу «config»,поле «sugar_version» и вводим туда номер версии новой инсталляции. Например, если там стояло значение «5.0.0», то ставим «5.2.0h».

Это все. Как видите, проблема решается очень просто и быстро.

 
<< В начало < Предыдущая 1 2 3 Следующая > В конец >>

Всего 1 - 9 из 20