🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.ruby
Article #410

Re: RoR insert po utworzeniu + trochę bloga :)

#410
From: punkracy
Date: Mon, 22 Jan 2007 19:58
43 lines
2771 bytes
tomek gomek napisał(a):
> Dnia Mon, 22 Jan 2007 19:35:11 +0100, tomek gomek napisał(a):
>
> > Ok, trochę poczytałem i proszę tylko o odpowiedź czy to jest poprawne:
>
> Żeby nie było odpowiedzi "sprawdź" to sprawdziłem i działa, chodzi mi
> tylko o to czy to jest "zgodne z zasadami"

no chyba tak na sztywno to nie ma sensu.
w modelu user dajesz:
has_and_belongs_to_many :roles
w modelu role
has_and_belongs_to_many :users

teraz będziesz miał dostęp do tych zależności, np.:
@user.roles.collect{|role| role.title}.join(', ')
wypisze oddzielając przecinkami, wszystkie role, które posiada user.

dodawać możesz np. w formularzu tworzącym użytkownika:

<p><label for="user[role_ids][]">Role</label><br />
<%= select_tag 'user[role_ids][]',
          options_from_collection_for_select(@roles, :id, :title,
@user.roles.collect{|role| role.id}),
          {:multiple => true, :size =>5}
%></p>
oczywiście @user i @roles musi być widoczne w tym widoku, a więc w
kontrolerze:
@user = User.new lub @user = User.new(params[:user])
oraz
@roles = Role.find(:all)

mam nadzieje, że nie namieszałem Ci zbytnio

pozdrawiam

ps. poczytaj:
http://brainspl.at/articles/2006/02/20/new-plugin-acl_system

--
Krzysztof Rączkiewicz
http://punkracy.com # Prawie jak Blog 27
http://10110.biz/pmug # Polish Mainframe User Group
Technical Details
Message-ID: <1169495908.299226.284510@l53g2000cwa.googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!l53g2000cwa.googlegroups.com!not-for-mail
References: <pan.2007.01.21.11.43.43.948396@moje.ubuntu.com.pl.eu.org> <rb8px4xdh5ng$.1bkgi342u0cty.dlg@40tude.net> <pan.2007.01.22.18.35.00.275455@moje.ubuntu.com.pl.eu.org> <pan.2007.01.22.18.37.04.781561@moje.ubuntu.com.pl.eu.org>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!l53g2000cwa.googlegroups.com!not-for-mail
From: "punkracy" <punkracy@gmail.com>
Newsgroups: pl.comp.lang.ruby
Subject: Re: RoR insert po utworzeniu + trochę bloga :)
Date: 22 Jan 2007 11:58:28 -0800
Organization: http://groups.google.com
Lines: 46
Message-ID: <1169495908.299226.284510@l53g2000cwa.googlegroups.com>
References: <pan.2007.01.21.11.43.43.948396@moje.ubuntu.com.pl.eu.org>   <rb8px4xdh5ng$.1bkgi342u0cty.dlg@40tude.net>   <pan.2007.01.22.18.35.00.275455@moje.ubuntu.com.pl.eu.org>   <pan.2007.01.22.18.37.04.781561@moje.ubuntu.com.pl.eu.org>
NNTP-Posting-Host: 85.221.181.49
Mime-Version: 1.0
X-Trace: posting.google.com 1169495923 26611 127.0.0.1 (22 Jan 2007 19:58:43 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Mon, 22 Jan 2007 19:58:43 +0000 (UTC)
In-Reply-To: <pan.2007.01.22.18.37.04.781561@moje.ubuntu.com.pl.eu.org>
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.8.1.1) Gecko/20060601 Firefox/2.0.0.1 (Ubuntu-edgy),gzip(gfe),gzip(gfe)
Complaints-To: groups-abuse@google.com
Injection-Info: l53g2000cwa.googlegroups.com; posting-host=85.221.181.49;   posting-account=9l9-wgwAAADwl5oyDdy35OlZH9vv-YaD
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit