Good Morning, Rick, I just woke up and thought, “Hey, I didn’t give the items an id ...”, but then realized the field is auto-indexed by Sqlite3. Ah, but then there are fields something like date_created, etc. Like Scarlett in “Gone With The Wind”, I decided to think about that after I check my newsgroup to see if someone generously posted a needed insight.
Thank you again for graciously sharing your hard-earned RoR insights with newbies like me as well as others. > rake routes Amazingly, I was just up to page 27 in “Practical REST on Rails 2 Projects”, which includes an inset entitled “Route Inspection: Rake Routes”. I surely will be studying that. For the moment, I think I understand the major error in my plan on updating the database due to new or changed data in the “/public/data/ csv” directory. Here’s my new plan: 1. I should include a “:before => :check_csv_status” in “/app/ controllers/application.rb”. 2. Then that “checker” can determine whether the “/public/data/csv” directory has changed. That can be done by: - check the timestamps; - validate saved checksums; or - compare against saved and hidden copies. 3. Then if any difference is found, put up a flash notice that the system is “stale” and have a always-visible “update cvs table” link. 4. Then “update cvs table” can use a portion of the techniques in “app/ controllers/csv_items_controller.rb” to accomplish adding new items, updating existing ones and removing ones according to the current content of the “/public/data/csv” directory. And thus the database will be brought up to speed. 5. For efficiency, perhaps a global, initially “false”, “cvs_table_up-to-date” switch should be set so that the check is only made at the beginning of a session. Users who tamper with the “/ public/data/csv” directory mid-session do so at their peril. 6. Maybe the last step of the update cvs table should be the command I heard so often in the military: “As you were!”, which translates to “resume the process you were involve in when you clicked the “update cvs table” link. I don’t know how to do that right now, but I’ll figure it out in due time. Does this sound like a coherent design to you. Again, Rick, thanks for your guidance. Best wishes, Richard On Nov 27, 3:52 am, Rick <[EMAIL PROTECTED]> wrote: > Hello Richard, > > In your project directory run: "rake routes". Get used to using this > command to check that RoR agrees with what you think are valid routes. > > Also, looking at your controller.index it seems that you are handing > the item list created from the csv filenames in to the index view. > The view is looking for each item's id which is nil - it doesn't get > set until the item is saved in the database. > > The line in index that you have commented out should be run to > generate @csv_items. > > You need to figure out how you're going to load the database before > you try to display it's contents. > > Rick > > On Nov 26, 4:05 pm, RichardOnRails > > <[EMAIL PROTECTED]> wrote: > > A couple of blemishes on my post. Obviously: > > The pastie hyperlink should behttp://www.pastie.org/325017 > > The other hyperlink doesn't make any sense. It's content is the third > > item on the pastie page. > > > I apologize for seeing how things would get displayed on the > > newsgroup. I doubt anybody will really be bothered by it. > > > Richard > > > On Nov 26, 8:45 pm, RichardOnRails > > > <[EMAIL PROTECTED]> wrote: > > > I’m trying to populate a table with the names and attributes of files > > > in public\data\csv. > > > > The ultimate target is a currently empty Sqlite3 database which yields > > > the following dump: > > > CREATE TABLE "csv_items" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT > > > NULL, "filename" varchar(255), "created" date, "modified" date, > > > "imported" date, > > > "created_at" datetime, "updated_at" datetime); > > > > Logger.info shows that I accessed the desired filenames, thanks to > > > this newsgroup. > > > > I changed CsvItemsController#index as follows: > > > # @csv_items = CsvItem.find(:all) > > > @csv_items = get_csv_filenames_attributes > > > > In def get_csv_filenames_attributes > > > # I populated a “values” array with the names of the files I > > > imported; then ... > > > array = [] > > > values.each { |filename| > > > item = CsvItem.new > > > item.filename = filename > > > item.created = Date.new (I’ll put in real values when I get this > > > problem solved. > > > item.modified = Date.new > > > item.imported = Date.new > > > array << item > > > } > > > array > > > end > > > > That seems to work, except some of the .erb’s became unhappy. So I > > > assume there’s something wrong with the way I populated @csv_items. > > > > I posted the following onhttp://www.pastie.org/325017: > > > csv_items_controller.rb > > > index.html.erb (the first .erb to > > > complain)http://localhost:3000/csv_items(whichshowsthe symptoms) > > > > TIA, > > > Richard --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

