How to handle NULL / NILL values

1 view
Skip to first unread message

Joro

unread,
Jan 9, 2009, 5:49:35 PM1/9/09
to Sofia Ruby Brigade
Здравейте,
Днес се активизирах и създадох много дискусии. :)
Имам следната главоблъсканица, в БД пазя път до снимка, но това поле
може и да е празно - NULL. искам като показвам листа със записите от
БД ако няма път към снимка да излиза празно поле, а в момента ако
направя проверка: if record.image_url.nil? го тълкува като не празна
стойност и никога не се изпълнява. На страницата се изписва за img
src: ?timestamp ( или поне нещо което много прилича на timestamp )?

идеи?

MitkOK

unread,
Jan 10, 2009, 9:45:34 AM1/10/09
to Sofia Ruby Brigade
Искаш да кажеш, че ако имаш поле image_url, което по "default" е NULL
при проверка с nil? ти дава FALSE ?

Georgi Stoimenov

unread,
Jan 10, 2009, 9:48:51 AM1/10/09
to sor...@googlegroups.com
Така си мислех но се оказа че след като Рейлс го запише вместо NULL
(default) слага просто празен стринг. Имаш ли идея как да го накарам
да си остане NULL.

Georgi Stoimenov

unread,
Jan 10, 2009, 9:50:04 AM1/10/09
to sor...@googlegroups.com
И още нещо, за срещата - понеже съм в Холандия и ще си идвам Февруари
3, има ли шанс да спретнем оше едно виждане или пък да отложим това до
3-4 фев.?


On 10.01.2009, at 15:45, MitkOK wrote:

MitkOK

unread,
Jan 10, 2009, 9:55:43 AM1/10/09
to Sofia Ruby Brigade
1. Ако е празен низ, можеш да го провериш с blank?

2. Събирането в Неделя е по инициатива на Rails групата, аз няма да
присъствам, но нищо не пречи да спретнем друга през Февруари.

Georgi Stoimenov

unread,
Jan 10, 2009, 9:57:06 AM1/10/09
to sor...@googlegroups.com
Проверих го вече мамицата му но как да му кажа да оставя NULL вместо
да вмъква " "

MitkOK

unread,
Jan 10, 2009, 10:42:39 AM1/10/09
to Sofia Ruby Brigade
Покажи код, как да гадаем.

Georgi Stoimenov

unread,
Jan 10, 2009, 10:44:29 AM1/10/09
to sor...@googlegroups.com
sekunda che imam gosti i ne moga mnogo da rabotia

Georgi Stoimenov

unread,
Jan 10, 2009, 10:51:34 AM1/10/09
to sor...@googlegroups.com
Migration / moje tuk da ne sa ok deklaraciite no sa genrirani
avtomatichno ot rails


class CreateProducts < ActiveRecord::Migration
def self.up
create_table :products do |t|
t.string :title
t.text :description
t.string :image_url

t.timestamps
end
end

def self.down
drop_table :products
end
end


Procedurata za sapisvane v bazata.

def create
@product = Product.new(params[:product])

respond_to do |format|
if @product.save
flash[:notice] = 'Product was successfully created.'
format.html { redirect_to(@product) }
format.xml { render :xml => @product, :status
=> :created, :location => @product }
else
format.html { render :action => "new" }
format.xml { render :xml => @product.errors, :status
=> :unprocessable_entity }
end
end
end

a te tui te go slojih v product.rb [modela]


def img_url
if image_url.nil? || image_url == ''
img_url = '/images/products/no_image_available.png'
else
img_url = image_url
end
end

sega vsichko varvi no problema e che ochakvah kato popalvam nov
produkt da ima NULL za image_url
kogato ne go setvam sam, a to palni blank string!

Aide do skoro i mersi

MitkOK

unread,
Jan 11, 2009, 8:54:42 AM1/11/09
to Sofia Ruby Brigade
1. Можеш да ползваш само image_url.empty?, не виждам смисъл да
проверяваш дали е nil.
2. Можеш да го направиш така :
def img_url
image_url.empty? ? '/images/products/no_image_available.png' :
image_url
end
3. Проблема ти най-вероятно идва от формата, която изпращаш.

Georgi Stoimenov

unread,
Jan 11, 2009, 1:20:30 PM1/11/09
to sor...@googlegroups.com
може да си прав приемам твоето предложение.
колкото до формата тя стандартната form_for. (textfield_tag za
image_url)
Rayn bates ima li screencast za file uploads?

MitkOK

unread,
Jan 11, 2009, 3:58:06 PM1/11/09
to Sofia Ruby Brigade
За ъплоад ти препоръчвам http://www.thoughtbot.com/projects/paperclip/,
има и скрийнкаст за него - http://railscasts.com/episodes/134-paperclip.
Изобщо плъгините на Thoughtbot са много качествени - Shoulda за TDD,
Factory Girl вместо безумни "fixtures" и Clearance за автентикация.

Georgi Stoimenov

unread,
Jan 12, 2009, 1:10:45 PM1/12/09
to sor...@googlegroups.com

Ako install-na niakoi plug in kam site, kato go deployna toi shte si e
vatre, ne e neobhodima da pravia neshto s hostvania server nali?


meersi

MitkOK

unread,
Jan 21, 2009, 9:02:55 AM1/21/09
to Sofia Ruby Brigade
Мисля, че това може да ти помогне : http://github.com/harukizaemon/stripper/tree/master
Reply all
Reply to author
Forward
0 new messages