First of all, my apologies for the 23839929th "newbie questions"
topic ;) But I've been reading up on cakePHP the couple of last days
now, and I've still some questions left which I'll like to answer
before I really can start working on my project.
Maybe some sort of background info could help, so here is some about
me and what I'm trying to accomplish:
My name is Ruud Bijnen, I'm 22 years old and live in the Netherlands.
Although I've been scripting PHP for over 6 years now, I never had any
proper education on computer science. All these years I've worked on
little hobby projects, which didn't require to much work, so my
experience with frameworks, MVC architecture and open source
contribution is almost zero.
The reason I'm now starting to use cakePHP is that I've taken on a
more complex project, and didn't want to start from scratch, also it's
a nice opportunity for me to learn about frameworks and a more
professional way of scripting/programming.
I live together with 13 other students in a nice student flat. Almost
every day we have diner together, although not everyone will join
everyday, we usually are with about 8 people. In order to keep costs
for everyone fair we keep track of who's eating that day, and which
costs are made, who paid for the food and who's next in line to
prepare diner. For this we have a few forms and those results are
weekly transformed into Excel sheets.
(also we've paperwork for beer, snacks, chores and expenses (on
household products etc.)
My task is to automate those processes. Also there is going to be a
nice little touch screen pc in the living room to be able to access al
(or at least most of the) these tasks. And me and my housemates will
be able to use a public website to access the app.
// sorry for the way to long introduction, I'll try to keep it to the
My first question is: how to best separate the 2 different user
Not only has everything to be large on the touch screen console, the
steps to accomplish something will be totally different in comparison
to the 'public' website. So I can't just use two different style
sheets. But the logic in the models (and probably the most in the
controllers) will be identical, so two different cake apps probably
isn't the best solution.
This brings me to my second question: what sort of code belongs to the
controller, and what to the model?
The manual is imo not very consistent about this, and that confuses
me. For example, in the models chapter they put some functions to a
model, like: hide($id), unhide($id) and makeInactive($uid). This makes
perfectly sense to me, but in "Example: Simple User Authentication"
they just put every thing in the controller (even the password
challenging, which imo should be part of the model).
Third: what would you recommend, develop in 1.x.x.x or 1.2.x.x?
I understand that it could take a while before the 1.2 branch reaches
a RC/stable milestone, and that "it's done when it's done" or as
Samuel DeVoreput it: "when it's done baking" ;). Personally I feel
more like using 1.2, unless you would discourage that.
Fourth, and hopefully last: there are a couple of authentication
examples/methods out there, but what would the best to use at this
point, or should I write my own?
Like most programmers I don't like to reinvent the wheel. There are
now a few auth modules I could chose from, but most are under heavy
development, are abandoned, or lack proper documentation. I'll need a
auth module where users can belong to multiple groups (because some
housemates will be admin to a part of the app and some a few parts),
but don't know which (if there is any).
At this point I don't have a lot of experience with blogging or
writing in general, but maybe at some point I'll try to write some
about this project, and it's problems and solutions I came across.
You received this message because you are subscribed to the Google Groups "Cake PHP" group.
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
For more options, visit this group at http://groups.google.com/group/cake-php?hl=en
|Powered by Nabble||Edit this page|