Never been to ShareSnippets before?

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

Профил на jivko


Уеб Адрес: http://blog.jivkobg.com
Добавени отрязъци: 29
Проекти:  3
Линкове:  2

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

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

Премахване на .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-28 от 28 общо