Day 1
8:12 pm - overview
I'm about to dive into the process of creating an image thumbnailer, I'm giving myself 2 hours. (update from the retrospectoscope: 2 hours would have been realistic with experience, this turned out to be more of a 5 hour undertaking in short bursts over the weekend).So far I've setup pyramid:
sudo easy_install virtualenv virtualenv --no-site-packages pyramid cd pyramid . bin/activate
8:16 pm - generating the project
I've decided to name my project 'imageuploadr'paster create -t pyramid_starter imageuploadr cd imageuploadr python setup.py develop
8:26 pm - simple template customization
Had a short emergency was distracted for about 5 minutesI decided to test tinkering with the template first, templates are sensibly located in the 'templates' folder.
edited imageuploadr/templates/mytemplate.pt. I added the string 'hey you *****'
Pyramid comes with it's own server I launched it with the following command
paster serve development.iniAnd was able to view the app in my browser at: http://127.0.0.1:6543
My customization showed up:
8:40 - tinkering with views
The __init__.py file is important, it allows us to control stuff.
Making a views folder because I like it better than a monolithic views.py file.
I renamed the views.py file to uploadr.py, created a views folder and then moved uploadr.py into the new folder. The new structure is shown below:I also had to edit the imageuploadr/__init__.py file
9:18 - just getting used to working with requests
Next I've done some rearranging of the code imageuploadr/views/uploadr.py, the goal is get familiar with requests. My changes will make my view 'listen' out for a firstname and lastname.I also adjusted the template to use the firstname and lastname keys (this is pretty primitive as the app now breaks if I don't pass a firstname and lastname to the request.
Now my imageuploadr/templates/mytemplate.pt now has the following snippet:
hey you ***** ${lastname} ${firstname}The following url: http://127.0.0.1:6543/?firstname=david&lastname=bain now results in:
9:35 - documenting
Mostly just documenting what I've done so far.9:42 - form processing
So now I want to see a form being processed.Adding the following code to the template:
I purposely used a post as I'm going to need that for my file upload later.
<form method="post" action="./"> <label>Lastname<input type="text" name="lastname" /><label> <label>Firstname<input type="text" name="firstname" /><label> <input type="submit" /> </form>Now I can add my firstname and lastname via a form.
Unfortunately household chores distracted me so I'll need to get back to this later.
Continued in Part II >>
No comments:
Post a Comment