ShareSnippets е публично хранилище за програмен код. Лесно можете да съберете собствена колекция от отрязъци от код, да ги систематизирате с етикети, ключови думи, и да ги споделите (или ако не искате, да ги запазите за себе си!)

Какво следва?
1. Запомнете ни с del.icio.us или гласувайте за нас в Digg
2. Абонирайте се за нашия RSS
3. Четете ни!
4. Споделете собствените си отрязъци с нас!
5. FeedBurner  


Какво ново?
1. Ruby on Rails проекти в България - Сподели за твоят "RoR" проект !
2. Полезни линкове към публикации, статии свързани с програмиране и администриране !


Add to Google Reader or Homepage    Subscribe in Bloglines  Subscribe in NewsGator Online  Add to netvibes


Ruby on Rails проекти в България

Агенция за недвижими имоти "Явлена"  Клуб по спортни танци "Брилянт София"  сп."REALESTATE"  Защитна стена 

Най-добрите етикети - Азбучно

apache (1)
gettext (1)
hosting (3)
macos (1)
mysql (1)
perl (1)
php (1)
rails (19)
ruby (2)
security (1)
seo (2)
sharesnippets (1)
subversion (2)
ubuntu (1)

Реклама

« По-нови Отрязъци
По-стари Отрязъци »
Показани 21-29 от 29 общо

Attachment_FU: Валидация

Модел:
has_attachment :content_type => :image, 
                   :storage => :file_system, 
                   :max_size => 100.kilobytes,
                   :resize_to => '320x240>',
                   :thumbnails => { :thumb => '100x100>' }
  
  validates_attachment  :content_type => "Файла който сте избрал е различен от JPEG, PNG или GIF",
                        :empty => 'Изберете файл',
                        :size => "Файла който сте избрал е с големина по-голяма от максималната позволена големина от 100 KB"

Добавете в:
RAILS_APP/vendor/plugins/attachment_fu/init.rb

Следният код:
Technoweenie::AttachmentFu::InstanceMethods.module_eval do
  protected
    def attachment_valid?
      if self.filename.nil?
        errors.add_to_base attachment_validation_options[:empty]
        return
      end
      [:content_type, :size].each do |option|
        if attachment_validation_options[option] && attachment_options[option] && !attachment_options[option].include?(self.send(option))
          errors.add_to_base attachment_validation_options[option]
        end
      end
    end
end

Technoweenie::AttachmentFu::ClassMethods.module_eval do
  # Options: 
  # *  <tt>:empty</tt> - Base error message when no file is uploaded. Default is "No file uploaded" 
  # *  <tt>:content_type</tt> - Base error message when the uploaded file is not a valid content type.
  # *  <tt>:size</tt> - Base error message when the uploaded file is not a valid size.
  #
  # Example:
  #   validates_attachment :content_type => "The file you uploaded was not a JPEG, PNG or GIF",
  #                        :size         => "The image you uploaded was larger than the maximum size of 10MB" 
  def validates_attachment(options={})
    options[:empty] ||= "No file uploaded" 
    class_inheritable_accessor :attachment_validation_options
    self.attachment_validation_options = options
    validate :attachment_valid?
  end

Rails Проект: Пренасяне на вече качени снимки към file_column плъгин

Имали сте сайт написан примерно на PHP преминавате към RubyOnRails и искате да пренесете вече качените снимки към новата си система в която използвате file_column плъгин например или сте имали например по една снимка към запис и искате да преминете към вариант галерия към всеки запис.(Примера е с преминаване към галерия за всеки запис):

      path = "#{RAILS_ROOT}/public/myimages/"
        records = YourModel.find :all
        for record in records
          begin
            if !record.picture.empty?
              YourMolelPicture.create(
              :parent_id => record.id,
              :file => File.open("#{path}#{record.picture}")
              )
            end
          rescue
            И какво се случва при грешка :)
          end

Сортиране на данни в таблица по колони

Сортиране на данни в таблица по колони в rubyonrails проект съчетано с will_paginate плъгин. Helper методите в примера работят със стил за промяна на вида - визуализиране на колоната и посоката и на сортиране. Например може да се направи стил с иконка стрелка за посоката на сортиране.

Helpers:
  def sort_th(value)
    result = 'id="sorted_by_asc"' if params[:sort] == value
    result = 'id="sorted_by_desc"' if params[:sort] == value + "_desc"
    return result
  end

  def sort_link(text, action, value)
    key = value
    key += "_desc" if params[:sort] == value
    link_to text, :action => action, :sort => key
  end


Controller:
 def list
    @page = params[:page]
    @sort = params[:sort]
    @results = Model.paginate :page => @page, :per_page => 5, :order => order_value(@sort)
  end


View:
  <tr>
    <th <%=sort_th "name"%>>
      <%=sort_link("Име", "list", "name")%>
    </th>
    <th <%=sort_th "address"%>>
      <%=sort_link("Адрес", "list", "address")%>
    </th>

.....
<%= will_paginate @results, :sort=>@sort %>

Премахване на .svn директории

find ./ -name ".svn" -type d -exec rm -rf \{} \;

Проверка и заместване на "лоши" символи в параметър...

Полезно при работа с параметри в PHP

function SQLParamCheck($param) {
        $str=$param;

        $str=str_replace("\\\\", "\\",$str);
        $str=str_replace("\\\"","\"", $str);
        $str=str_replace("\\'","'", $str);
        $str=str_replace("\\`","`", $str);
        $str=str_replace("\\","\\\\", $str);
        $str=str_replace("\"", "\\\"", $str);
        $str=str_replace("'", "\\'", $str);
        $str=str_replace("`", "\\`", $str);

        return $str;
}


Използване:

$param = SQLParamCheck($_POST['param']);

Subversion и RubyOnRails проект...

svn remove log/* --force
svn commit -m "removing all log files from subversion"
svn propset svn:ignore "*.log" log/ --force
svn update log/
svn commit -m "Ignoring all files in /log/ ending in .log"
svn propset svn:ignore "*" tmp/sessions tmp/cache tmp/sockets
svn commit -m "Ignoring all files in /tmp/"
svn remove tmp/*
svn propset svn:ignore "*" tmp/
svn update tmp/
svn commit -m "ignore tmp/ content from now"

Валидиция за формат на поле - да съдържа само числа

Добавете за съответното поле във вашият модел:
 validates_format_of :param, :with => /^[0-9]+$/i, :message =>'Param: може да бъде само....'

Кирилица и UTF8 - rubyonrails проект.

Добавете във вашият ApplicationController следното:

class ApplicationController < ActionController::Base
.....

  before_filter :set_default_content_type
  after_filter :set_default_content_type

  def set_default_content_type
    headers["Content-Type"] = "text/html; charset=utf-8"
    suppress(ActiveRecord::StatementInvalid) do
      ActiveRecord::Base.connection.execute 'SET NAMES UTF8'
    end
  end
.....


database.yml

  adapter: mysql
  database: DATABASE
  username: root
  password:
  host: localhost
  encoding: UTF8

www.ShareSnippets.com

Добре Дошли !

Тук може да споделите Вашите конфигурационни файлове, отрязаци от код, програмни и други решения.
« По-нови Отрязъци
По-стари Отрязъци »
Показани 21-29 от 29 общо