Lynn
Have you tried the Travelodge at Newcraighall Musselburgh ? Think it is called Edinburgh East. Usually around £40 per room unless they have special offers. This is just off the A1 and about 25 mins max on the City Bypass to Ingliston. It has a Little Chef and Burgerking but then just a couple of miles away is Musselburgh town centre and there are loads and loads of takeaways (I used to live there). With regards to dog walking, you would have to jump in the car but you are only talking a 2 minute drive to get to a walking area, although if you are feeling fit you could walk it. If you drive into Musselburgh there is a fantastic promenade to walk along where you can let the dogs run on the beach and the playing fields.
This is not in the centre of Edinburgh as Edinburgh is about 6 miles away :-)
If this is no good I'll put my thinking cap on.