Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 193 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 193 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Notice (8): Undefined index: searchdate [APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80]Code Context$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59"));if(!empty($this->params['days']))$start_cond['$lt'] = new MongoDate(strtotime($this->params['searchdate']." 23:59:59 + ".$this->params['days']." days")) ;$count = false $grouped = false $start_cond = array( '$gte' => object(MongoDate) { sec => (int) 1766037600 usec => (int) 0 } )EventsComponent::create_search_condition() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 80 EventsComponent::search() - APP/Plugin/Core/Controller/Component/EventsComponent.php, line 43 TtdController::process_rule() - APP/Controller/TtdController.php, line 174 TtdController::get_ttd_slots() - APP/Controller/TtdController.php, line 111 TtdController::view() - APP/Controller/TtdController.php, line 71 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11
Steak and salad tend to go well together and at Northville's Gaucho Steakhouse, they go together especially well. A Brazilian steakhouse complete with waterfall and Brazilian cherry wood for cooking,… Read More
Ann Arbor staple BurgerFi offers plenty of noteworthy sandwiches, but it's the milkshakes that are particularly exciting. Not only are there some really amazing flavors here like caramel banana… Read More
Northville's Northville Art House offers a pretty impressive array of art classes for its attendees, including not only classes through the year, but also workshops and summer camps. One of the most… Read More
The Paw Print Inn in Novi represents one great notion in pet boarding: Luxury above all. It's not just for dogs, as cats are welcome too, and even “special needs” pets will have some… Read More
Nagomi Japanese Restaurant in Novi has an impressive range of options, and not just in the ramen department either. Whether you're after shio with the sliced roast pork, niratama with leek and egg,… Read More
Plymouth is home to the Cantoro Italian Market, sometimes called the “Disneyland” of Mediterranean food options. You'll not only be able to eat prepared pasta dishes here, but you'll also… Read More
Novi's Paradise Park delivers celebration in just about any fashion you could ask for. Sure, there are bar and bat mitzvahs alike, as well as bachelor/bachelorette parties and even bridal and baby… Read More
If you've got gamer kids in the house, or if you happen to be one, a trip to Marvin's in Farmington Hills won't go amiss. Focused on arcade machines going back to the earliest days of the arcade,… Read More
Listed previously in our look at great Michigan museums, Marvin's in Farmington Hills is hard to pass up as an arcade as well thanks to the fact that most of the exhibits both come from arcades and… Read More
Dogs and cats alike can swing by Plymouth's Celebrity Pets Co. to check out what they've got to offer. And they've got plenty to offer, that's for sure; whether it's toys, treats—Stella and… Read More
Notice (8): Trying to access array offset on value of type null [APP/Plugin/Core/Controller/Component/PlacesComponent.php, line 68]Code Contextif($params['tags'])$options['conditions']['tags'] = $params['tags'];else if($this->params['tags_logical'])$params = array( 'show' => (int) 5, 'title' => 'Organizations around Northville', 'images' => false, 'group_type' => 'organization', 'sort' => 'created', 'sort_rule' => '-1', 'keyword' => '', 'radius' => null, 'limit' => (int) 15, 'page' => (int) 1, 'sef' => '', 'tags' => '', 'tags_logical' => '', 'terms' => '', 'show_limit' => (int) 3, 'days' => '', 'max-days' => (int) 365, 'max-miles' => (int) 45, 'message' => '[message to follow]', 'min' => (int) 50, 'prompt' => '', 'height' => '', 'width' => '', 'data_id' => '', 'more' => true, 'type' => '', 'autoshowmore' => false, 'link' => '', 'showdesc' => '', 'rankby' => '', 'empty-message' => '', 'ad_slots' => '', 'see-more-title' => '', 'searchdate' => '', 'searchenddate' => '', 'lat' => (float) 42.430599212646, 'lng' => (float) -83.483200073242, 'latlng' => '42.430599212646,-83.483200073242', 'city' => 'Northville', 'state' => 'MI', 'theme' => '', 'page_type' => 'town' ) $options = array( 'page' => (int) 1, 'limit' => (int) 5, 'order' => array( 'created' => (int) -1 ), 'conditions' => array( 'address.town_sef_url' => 'northville-mi' ) )PlacesComponent::search() - APP/Plugin/Core/Controller/Component/PlacesComponent.php, line 68 PlacesController::local() - APP/Controller/PlacesController.php, line 52 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193 Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167 CakeObject::requestAction() - CORE/Cake/Core/CakeObject.php, line 104 Modules::render() - APP/Lib/Modules.php, line 23 include - APP/View/Elements/display.ctp, line 14 View::_evaluate() - CORE/Cake/View/View.php, line 971 View::_render() - CORE/Cake/View/View.php, line 933 View::render() - CORE/Cake/View/View.php, line 473 Controller::render() - CORE/Cake/Controller/Controller.php, line 963 AppController::renderPage() - APP/Controller/AppController.php, line 224 TownsController::displayTown() - APP/Controller/TownsController.php, line 11 ReflectionMethod::invokeArgs() - [internal], line ?? Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 491 Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193
Northville, Michigan. Population for Northville from the last gathering is 6459. You can view Northville venues that host many Northville MI events every year.
You can find a ton of properties for sale if you search the Northville page on Zillow. Currently Northville has an average listing price for homes for sale on the market of $119,822. More real estate facts about Northville: The number of properties currently for sale in Northville is 4,739. The median homes for sale listing price is $60,000. This is broken down with the number of three bedroom houses in Northville consisting of 2,854 with an average listing price for these house of $80,476. Out of the 816 houses that are four bedroom the average listing price for Northville is $215,184. Interest rates for Northville are at historic lows as well.
Northville Michigan has a latitude of 42.430599212646 and a longitude of -83.483200073242. View the full profile
On Yahoo, Yelp, SuperPages, AmericanTowns and 25 other directories!
Add your social media links and bio and promote your discounts, menus, events.
Be sure your listing is up on all the key local directories with all your important content (social links and product info).
| Nr | Query | Error | Affected | Num. rows | Took (ms) |
|---|---|---|---|---|---|
| 1 | db.towns.find( {"sef_url":"little-torch-key-fl"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 12 | |
| 2 | db.sites.find( {"hostname":{"$in":["americantowns.com","localword"]}}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 3 | |
| 3 | db.towns.find( {"sef_url":"northville-mi"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 4 | db.pages.find( {"type":"town","slug":{"$in":["home"]},"site.hostname":"americantowns.com"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 4 | |
| 5 | db.modules.find( {"name":{"$in":["Header Menu Main","header script","footer menu","footer script"]}}, [] ).sort( [] ).limit( 0 ).skip( 0 ) | 0 | 4 | 1 | |
| 6 | db.ttd_towns.find( {"town_sef_url":"northville-mi","name":"Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 7 | db.ttd.find( {"name":"Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 8 | db.modules.find( {"module_id":"1022"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 6 | |
| 9 | db.modules.find( {"name":"AT - Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 10 | db.articles.find( {"aggregate":[{"$geoNear":{"near":[-83.48320007324219,42.430599212646484],"distanceField":"distance","distanceMultiplier":3963.2,"maxDistance":0.025232135647961243,"spherical":true,"query":{"tags":"at-bt-articles-home","state":"MI"}}},{"$project":{"title":1,"homepage_title":1,"tags":1,"image_url":1,"distance":1,"page_path":1,"path":1,"article_hostname":1,"text":1,"publish_date":1,"site_canonical":1,"sections.title":1,"sections.geo":1,"sections.text":1}},{"$addFields":{"days_since":{"$divide":[{"$subtract":["MongoDB\\BSON\\UTCDateTime(1766097372109)","$publish_date"]},86400000]},"relevance_score":{"$add":[{"$multiply":["$distance",10]},{"$divide":[{"$subtract":["MongoDB\\BSON\\UTCDateTime(1766097372109)","$publish_date"]},86400000]}]}}},{"$sort":{"relevance_score":1,"_id":1}},{"$skip":0},{"$limit":11}]}, ["article_id","title","homepage_title","tags","image_url","path","article_hostname","sef_tail","page_path","text","publish_date","site_canonical","sections.title","sections.text"] ).sort( {"relevance_score":1,"_id":1} ).limit( 11 ).skip( 0 ) | 0 | 11 | 158 | |
| 11 | db.ttd_towns.find( {"town_sef_url":"northville-mi","name":"Article Slideshow"}, {"TtdTown._id":1} ).sort( [] ).limit( 0 ).skip( 0 ) | 0 | 0 | 1 | |
| 12 | db.ttd.find( {"name":"Article Slideshow"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 13 | db.events_cache.find( {"_id":"b674d1956f832940c0972c55c52054ed"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 5 | |
| 14 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1766728799)"},"tags":"ticketmaster","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.21739130434782608]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 2 | 18 | |
| 15 | db.events_cache.count( {"_id":"b674d1956f832940c0972c55c52054ed"} ) | 0 | 0 | 1 | |
| 16 | db.events_cache.count( {"_id":"b674d1956f832940c0972c55c52054ed"} ) | 0 | 0 | 1 | |
| 17 | db.events_cache.insert( {"_id":"b674d1956f832940c0972c55c52054ed","town_sef_url":"northville-mi","data_key":["689ffd43fb5e4bed1f95609e"],"sort_order":{"start":1},"params":"{\"tags\":\"ticketmaster\",\"radius\":\"15\",\"days\":\"7\",\"show\":1,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":true}","modified":"MongoDate(0.32800000 1766097372)","created":"MongoDate(0.32800000 1766097372)"} , true) | 0 | 0 | 1 | |
| 18 | db.events_cache.find( {"_id":"6ed7dff4c4a188c72aabec583cccfe15"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 19 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1766728799)"},"event_id":{"$nin":[76064630]},"tags":"music","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.14492753623188406]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 0 | 4 | |
| 20 | db.events_cache.count( {"_id":"6ed7dff4c4a188c72aabec583cccfe15"} ) | 0 | 0 | 1 | |
| 21 | db.events_cache.count( {"_id":"6ed7dff4c4a188c72aabec583cccfe15"} ) | 0 | 0 | 1 | |
| 22 | db.events_cache.insert( {"_id":"6ed7dff4c4a188c72aabec583cccfe15","town_sef_url":"northville-mi","data_key":[],"sort_order":{"start":1},"params":"{\"tags\":\"music\",\"radius\":\"10\",\"days\":\"7\",\"show\":1,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":false}","modified":"MongoDate(0.35300000 1766097372)","created":"MongoDate(0.35300000 1766097372)"} , true) | 0 | 0 | 1 | |
| 23 | db.events_cache.find( {"_id":"f5bcf107e53966f5e9184859411bbca7"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 24 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1767333599)"},"event_id":{"$nin":[76064630]},"tags":"music","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.21739130434782608]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 0 | 7 | |
| 25 | db.events_cache.count( {"_id":"f5bcf107e53966f5e9184859411bbca7"} ) | 0 | 0 | 1 | |
| 26 | db.events_cache.count( {"_id":"f5bcf107e53966f5e9184859411bbca7"} ) | 0 | 0 | 1 | |
| 27 | db.events_cache.insert( {"_id":"f5bcf107e53966f5e9184859411bbca7","town_sef_url":"northville-mi","data_key":[],"sort_order":{"start":1},"params":"{\"tags\":\"music\",\"radius\":\"15\",\"days\":\"14\",\"show\":1,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":false}","modified":"MongoDate(0.38000000 1766097372)","created":"MongoDate(0.38000000 1766097372)"} , true) | 0 | 0 | 1 | |
| 28 | db.events_cache.find( {"_id":"57cc0ec5e628cce0bb60be77e5ab02e0"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 29 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1766383199)"},"event_id":{"$nin":[76064630]},"tags":"festivals","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.21739130434782608]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 0 | 2 | |
| 30 | db.events_cache.count( {"_id":"57cc0ec5e628cce0bb60be77e5ab02e0"} ) | 0 | 0 | 1 | |
| 31 | db.events_cache.count( {"_id":"57cc0ec5e628cce0bb60be77e5ab02e0"} ) | 0 | 0 | 1 | |
| 32 | db.events_cache.insert( {"_id":"57cc0ec5e628cce0bb60be77e5ab02e0","town_sef_url":"northville-mi","data_key":[],"sort_order":{"start":1},"params":"{\"tags\":\"festivals\",\"radius\":\"15\",\"days\":\"3\",\"show\":1,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":false}","modified":"MongoDate(0.39600000 1766097372)","created":"MongoDate(0.39600000 1766097372)"} , true) | 0 | 0 | 1 | |
| 33 | db.events_cache.find( {"_id":"bcdb29c4ce3a33a42ea49a9994d04a28"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 34 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1768715999)"},"event_id":{"$nin":[76064630]},"tags":"festivals","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.8695652173913043]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 0 | 2 | |
| 35 | db.events_cache.count( {"_id":"bcdb29c4ce3a33a42ea49a9994d04a28"} ) | 0 | 0 | 1 | |
| 36 | db.events_cache.count( {"_id":"bcdb29c4ce3a33a42ea49a9994d04a28"} ) | 0 | 0 | 1 | |
| 37 | db.events_cache.insert( {"_id":"bcdb29c4ce3a33a42ea49a9994d04a28","town_sef_url":"northville-mi","data_key":[],"sort_order":{"start":1},"params":"{\"tags\":\"festivals\",\"radius\":\"60\",\"days\":\"30\",\"show\":1,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":false}","modified":"MongoDate(0.41500000 1766097372)","created":"MongoDate(0.41500000 1766097372)"} , true) | 0 | 0 | 1 | |
| 38 | db.events_cache.find( {"_id":"64d8b73487d358f85696adaf41687961"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 39 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1766555999)"},"event_id":{"$nin":[76064630]},"tags":"arts-and-entertainment","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.14492753623188406]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 0 | 31 | |
| 40 | db.events_cache.count( {"_id":"64d8b73487d358f85696adaf41687961"} ) | 0 | 0 | 1 | |
| 41 | db.events_cache.count( {"_id":"64d8b73487d358f85696adaf41687961"} ) | 0 | 0 | 1 | |
| 42 | db.events_cache.insert( {"_id":"64d8b73487d358f85696adaf41687961","town_sef_url":"northville-mi","data_key":[],"sort_order":{"start":1},"params":"{\"tags\":\"arts-and-entertainment\",\"radius\":\"10\",\"days\":\"5\",\"show\":1,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":false}","modified":"MongoDate(0.49900000 1766097372)","created":"MongoDate(0.49900000 1766097372)"} , true) | 0 | 0 | 1 | |
| 43 | db.events_cache.find( {"_id":"1407042735e81ece7ed34d0cd6ed7b17"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 44 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1767419999)"},"event_id":{"$nin":[76064630]},"tags":"arts-and-entertainment","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.21739130434782608]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 2 ).skip( 0 ) | 0 | 2 | 74 | |
| 45 | db.events_cache.count( {"_id":"1407042735e81ece7ed34d0cd6ed7b17"} ) | 0 | 0 | 1 | |
| 46 | db.events_cache.count( {"_id":"1407042735e81ece7ed34d0cd6ed7b17"} ) | 0 | 0 | 37 | |
| 47 | db.events_cache.insert( {"_id":"1407042735e81ece7ed34d0cd6ed7b17","town_sef_url":"northville-mi","data_key":["6917c164de4ae56f5a3f4cf2"],"sort_order":{"start":1},"params":"{\"tags\":\"arts-and-entertainment\",\"radius\":\"15\",\"days\":\"15\",\"show\":1,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":true}","modified":"MongoDate(0.65700000 1766097372)","created":"MongoDate(0.65700000 1766097372)"} , true) | 0 | 0 | 1 | |
| 48 | db.events_cache.find( {"_id":"610b7fa89cff40c989176d336d5dd334"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 5 | |
| 49 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1767938399)"},"event_id":{"$nin":[76064630,76345727]},"tags":"ticketmaster","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],1.4492753623188406]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 51 ).skip( 0 ) | 0 | 51 | 47 | |
| 50 | db.events_cache.count( {"_id":"610b7fa89cff40c989176d336d5dd334"} ) | 0 | 0 | 16 | |
| 51 | db.events_cache.count( {"_id":"610b7fa89cff40c989176d336d5dd334"} ) | 0 | 0 | 4 | |
| 52 | db.events_cache.insert( {"_id":"610b7fa89cff40c989176d336d5dd334","town_sef_url":"northville-mi","data_key":["6857c259fb5e4bed1f86f868","68c0e124c3af739f253dc313","68cb6d26c3af739f2584b21f","69017a9ac3af739f25e3ecea","6857c263fb5e4bed1f8708ed","68d5f926c3af739f25933746","692baa90de4ae56f5a18a9d0","691bd893de4ae56f5a7c04d0","69056f1bde4ae56f5ad837f3","685913abfb5e4bed1fd9a0f8","685913aefb5e4bed1fd9a4e0","68849576fb5e4bed1f7e43ac","69017a9ac3af739f25e3ed66","690d5819de4ae56f5ac11d52","690ab51bde4ae56f5a840c6d","68a5433dfb5e4bed1febc104","68d5f927c3af739f259337d9","68f9919fc3af739f2535a2cc","691bd893de4ae56f5a7c052d","68f1a89dc3af739f25dd6c03","68f9919fc3af739f2535a2ee","685a6597fb5e4bed1f656998","68f6ee9ac3af739f25828bdf","690c0697de4ae56f5a9c09e4","68fae31fc3af739f25d94d3b","685a65a0fb5e4bed1f657893","6913ef94de4ae56f5a16b24b","6938d993de4ae56f5aaa91ff","685a65a0fb5e4bed1f6578cf","68849578fb5e4bed1f7e45f1","6889db81fb5e4bed1fad3afc","68ca1ba3c3af739f25d8137a","68ef059fc3af739f254bf9e7","691d2a14de4ae56f5a437074","6938d993de4ae56f5aaa9243","68911577fb5e4bed1fbe361f","690ab51bde4ae56f5a840cf7","689eabbdfb5e4bed1f7b3351","68b7a6aac3af739f2571ece4","6900291bc3af739f259ba807","69096398de4ae56f5a1c035e","68bf8fa5c3af739f25b372a7","687a0975fb5e4bed1ff18b20","685bb75dfb5e4bed1fb6ac3c","685bb75ffb5e4bed1fb6b15f","68c0e124c3af739f253dc520","6900291bc3af739f259ba8d2","68e5cb1ec3af739f25c7794e","685bb764fb5e4bed1fb6b9fb","685bb769fb5e4bed1fb6c2d5"],"sort_order":{"start":1},"params":"{\"tags\":\"ticketmaster\",\"radius\":\"100\",\"days\":\"21\",\"show\":50,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":true}","modified":"MongoDate(0.82000000 1766097372)","created":"MongoDate(0.82000000 1766097372)"} , true) | 0 | 0 | 2 | |
| 53 | db.events_cache.find( {"_id":"1376b6f6de2107da9885ef4be395be29"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 1 | |
| 54 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)","$lt":"MongoDate(0.00000000 1767938399)"},"event_id":{"$nin":[76064630,76345727,76189460]},"tags":"music","geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],1.4492753623188406]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 51 ).skip( 0 ) | 0 | 28 | 14 | |
| 55 | db.events_cache.count( {"_id":"1376b6f6de2107da9885ef4be395be29"} ) | 0 | 0 | 1 | |
| 56 | db.events_cache.count( {"_id":"1376b6f6de2107da9885ef4be395be29"} ) | 0 | 0 | 3 | |
| 57 | db.events_cache.insert( {"_id":"1376b6f6de2107da9885ef4be395be29","town_sef_url":"northville-mi","data_key":["691d6253de4ae56f5ae8836f","685913aefb5e4bed1fd9a448","6882844ffb5e4bed1f53ab6d","689e67d4fb5e4bed1f3b2c91","69157955de4ae56f5a227abd","690ee1d7de4ae56f5a290d63","6933cbd6de4ae56f5a4a6337","68828453fb5e4bed1f53ae34","690d9056de4ae56f5a18dda5","69200555de4ae56f5af2c8a8","69200555de4ae56f5af2c8cc","6903045b3394d74e7843bccd","69200555de4ae56f5af2c8de","6906f8d8de4ae56f5a377338","6903045b3394d74e7843bcf1","6933cbd6de4ae56f5a4a6416","6903045b3394d74e7843bd45","6901b2dbc3af739f251880cb","6933cbd7de4ae56f5a4a6614","6916cad6de4ae56f5a4f485e","6933cbd7de4ae56f5a4a66f5","69254b57de4ae56f5a9f589b","690c3ed9de4ae56f5afb9b75","6933cbd7de4ae56f5a4a69b1","69200555de4ae56f5af2cb74","6933cbd7de4ae56f5a4a6b16","687371b5fb5e4bed1f4b68a9","68d4dfe7c3af739f258d945e"],"sort_order":{"start":1},"params":"{\"tags\":\"music\",\"radius\":\"100\",\"days\":\"21\",\"show\":50,\"geo\":[-83.48320007324219,42.430599212646484],\"has_next_page\":false}","modified":"MongoDate(0.91500000 1766097372)","created":"MongoDate(0.91500000 1766097372)"} , true) | 0 | 0 | 2 | |
| 58 | db.ttd_towns.insert( {"name":"Article Slideshow","main_slot_type":"module","main_slot_module_id":"1022","main_slot_html":"<div id=\"atCarousel\" class=\"carousel slide\" data-interval=\"5000\" data-ride=\"carousel\">\n\t<ol class=\"carousel-indicators\">\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"0\" class=\"active\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"1\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"2\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"3\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"4\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"5\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"6\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"7\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"8\" class=\"\"><\/li>\n\t\t\t\t<li data-target=\"#atCarousel\" data-slide-to=\"9\" class=\"\"><\/li>\n\t\t\t<\/ol> \n\t<div class=\"carousel-inner\">\n\t\t\t\t<div class=\"item active\" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-salad-bars-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/salad-bars\/\" target=\"_blank\">7 Best Salad Bars in Michigan<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/salad-bars\/\" target=\"_blank\">Gaucho Steakhouse, Northville, MI <\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,food-drink-bt,food-drink-p300,at-bt-articles-home,at-bt-articles-restaurant<\/div>\n\t\t\t\t<p class=\"small\">Steak and salad tend to go well together and at Northville's Gaucho Steakhouse, they go together especially well. A Brazilian steakhouse complete with waterfall and Brazilian cherry wood for cooking,… <a href=\"https:\/\/bestthingsmi.com\/salad-bars\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-milkshake-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/milkshakes\/\" target=\"_blank\">5 Best Milkshakes in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/milkshakes\/\" target=\"_blank\">BurgerFi, Northville, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,food-drink-bt,food-drink-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-restaurant<\/div>\n\t\t\t\t<p class=\"small\">Ann Arbor staple BurgerFi offers plenty of noteworthy sandwiches, but it's the milkshakes that are particularly exciting. Not only are there some really amazing flavors here like caramel banana… <a href=\"https:\/\/bestthingsmi.com\/milkshakes\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-art-classes-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/art-classes\/\" target=\"_blank\">10 Best Art Classes in Michigan<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/art-classes\/\" target=\"_blank\">Northville Art House, Northville, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,community-life-bt,at-bt-articles-home,at-bt-articles-community<\/div>\n\t\t\t\t<p class=\"small\">Northville's Northville Art House offers a pretty impressive array of art classes for its attendees, including not only classes through the year, but also workshops and summer camps. One of the most… <a href=\"https:\/\/bestthingsmi.com\/art-classes\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-dog-kennel-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/dog-kennels\/\" target=\"_blank\">The 10 Best Dog Kennels in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/dog-kennels\/\" target=\"_blank\">Paw Print Inn, Novi, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,directory-bt,directory-p300,at-bt-articles-home,at-bt-articles-directory<\/div>\n\t\t\t\t<p class=\"small\">The Paw Print Inn in Novi represents one great notion in pet boarding: Luxury above all. It's not just for dogs, as cats are welcome too, and even “special needs” pets will have some… <a href=\"https:\/\/bestthingsmi.com\/dog-kennels\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-ramen-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/ramen-restaurants\/\" target=\"_blank\">5 Best Ramen Places in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/ramen-restaurants\/\" target=\"_blank\">Nagomi Japanese Restaurant, Novi, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,food-drink-bt,food-drink-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-restaurant<\/div>\n\t\t\t\t<p class=\"small\">Nagomi Japanese Restaurant in Novi has an impressive range of options, and not just in the ramen department either. Whether you're after shio with the sliced roast pork, niratama with leek and egg,… <a href=\"https:\/\/bestthingsmi.com\/ramen-restaurants\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-pasta-places-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/pasta-places\/\" target=\"_blank\">The 7 Best Pasta Places in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/pasta-places\/\" target=\"_blank\">Cantoro Italian Market, Plymouth, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,food-drink-bt,food-drink-p300,at-bt-articles-home,at-bt-articles-restaurant<\/div>\n\t\t\t\t<p class=\"small\">Plymouth is home to the Cantoro Italian Market, sometimes called the “Disneyland” of Mediterranean food options. You'll not only be able to eat prepared pasta dishes here, but you'll also… <a href=\"https:\/\/bestthingsmi.com\/pasta-places\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-kids-birthday-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/birthday-party-places-for-kids\/\" target=\"_blank\">9 Best Places for a Kid\u2019s Birthday Party in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/birthday-party-places-for-kids\/\" target=\"_blank\">Paradise Park, Novi, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,community-life-bt,community-life-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-community<\/div>\n\t\t\t\t<p class=\"small\">Novi's Paradise Park delivers celebration in just about any fashion you could ask for. Sure, there are bar and bat mitzvahs alike, as well as bachelor\/bachelorette parties and even bridal and baby… <a href=\"https:\/\/bestthingsmi.com\/birthday-party-places-for-kids\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-museums-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/museums\/\" target=\"_blank\">The 8 Best Museums in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/museums\/\" target=\"_blank\">Marvin's Marvelous Mechanical Museum, Farmington Hills, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,entertainment-bt,entertainment-p300,at-bt-articles-home,at-bt-articles-entertainment<\/div>\n\t\t\t\t<p class=\"small\">If you've got gamer kids in the house, or if you happen to be one, a trip to Marvin's in Farmington Hills won't go amiss. Focused on arcade machines going back to the earliest days of the arcade,… <a href=\"https:\/\/bestthingsmi.com\/museums\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-arcades-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/arcades\/\" target=\"_blank\">10 Best Arcades in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/arcades\/\" target=\"_blank\">Marvin's Marvelous Mechanical Museum, Farmington Hills, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,entertainment-bt,entertainment-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-entertainment<\/div>\n\t\t\t\t<p class=\"small\">Listed previously in our look at great Michigan museums, Marvin's in Farmington Hills is hard to pass up as an arcade as well thanks to the fact that most of the exhibits both come from arcades and… <a href=\"https:\/\/bestthingsmi.com\/arcades\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"item \" style=\"background-image:url(https:\/\/cdn-p300.americantowns.com\/img\/article\/mi-pet-boutique-1.jpg);\">\n\n\t\t\t\t\t<div class=\"carousel-caption\">\n\t\t\t\t<h4><a href=\"https:\/\/bestthingsmi.com\/pet-boutiques\/\" target=\"_blank\">7 Best Pet Boutiques in Michigan!<\/a><\/h4>\n\t\t\t\t<div class=\"small\">Featuring<\/div>\n\t\t\t\t<h2><a href=\"https:\/\/bestthingsmi.com\/pet-boutiques\/\" target=\"_blank\">Celebrity Pets Co., Plymouth, MI<\/a><\/h2>\n\t\t\t\t<div class=\"d-none hidden\">evergreen,directory-bt,directory-p300,edited-cynthia,at-bt-articles-home,at-bt-articles-directory<\/div>\n\t\t\t\t<p class=\"small\">Dogs and cats alike can swing by Plymouth's Celebrity Pets Co. to check out what they've got to offer. And they've got plenty to offer, that's for sure; whether it's toys, treats—Stella and… <a href=\"https:\/\/bestthingsmi.com\/pet-boutiques\/\" target=\"_blank\" class=\"text-nowrap\"><b>Read More<\/b><\/a><\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t<\/div>\n<\/div>\n\n\n","town_sef_url":"northville-mi","title":"Hiking!","subtitle":"Maps, directions and reviews for hiking around {local_city_state}!","image_url":"{\"0\":{\"content_type\":\"movie\",\"movie\":\"\/movie\/black-panther-wakanda-forever-297863\/\",\"title\":\"Black Panther: Wakanda Forever\",\"thumbnail\":\"https:\/\/www.movienewsletters.net\/photos\/297863R4.jpg\"},\"1\":{\"content_type\":\"event_tag\",\"searchtag\":\"ticketmaster","url":"\/{town_sef_url}\/hiking\/","slots":[{"rule":"{\"content_type\":\"event_tag\",\"searchtag\":\"ticketmaster\",\"radius\":\"15\",\"days\":\"7\",\"ttl\":\"1\",\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/music-1.jpg\"}","expiration":1766100972,"type":"Event","id":76064630,"title":"Magic Bus","url":"\/event\/magic-bus-2025-12-19-tm-westland-mi.html","image_url":"https:\/\/i.ticketweb.com\/i\/00\/12\/71\/42\/34_Edp.jpg?v=3"},{"rule":"{\"content_type\":\"event_category\",\"radius\":\"15\",\"days\":\"15\",\"ttl\":\"2\",\"isempty\":1,\"event_category\":\"arts-and-entertainment\",\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/arts-2.jpg\"}","expiration":1766104572,"type":"Event","id":76345727,"title":"Velvet Carolers At Glenlore Trails","url":"\/event\/velvet-carolers-at-glenlore-trails-2025-12-18-commerce-township-mi.html","image_url":"https:\/\/cdn-p300.americantowns.com\/img\/generic-icon.jpg"},{"rule":"{\"content_type\":\"event_tag\",\"searchtag\":\"ticketmaster\",\"radius\":\"100\",\"days\":\"21\",\"ttl\":\"4\",\"israndom\":1,\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/music-1.jpg\"}","expiration":1766111772,"type":"Event","id":76189460,"title":"The Bends - Radiohead Tribute","url":"\/event\/the-bends-radiohead-tribute-2025-12-18-tm-ann-arbor-mi.html","image_url":"https:\/\/i.ticketweb.com\/i\/00\/13\/20\/75\/23_Edp.jpg?v=7"},{"rule":"{\"content_type\":\"event_tag\",\"searchtag\":\"music\",\"radius\":\"100\",\"days\":\"21\",\"ttl\":\"4\",\"israndom\":1,\"thumbnail\":\"https:\\\/imgcdn.americantowns.com\\\/img\\\/uploads\\\/banner-images\\\/music-3.jpg\"}","expiration":1766111772,"type":"Event","id":76285832,"title":"Sam Feldt","url":"\/event\/sam-feldt-2025-12-20-jb-detroit-mi.html","image_url":"https:\/\/www.jambase.com\/wp-content\/uploads\/2023\/09\/sam-feldt-980x551.png"}],"modified":"MongoDate(0.91900000 1766097372)","created":"MongoDate(0.91900000 1766097372)","_id":ObjectId ("694481dc609cc7ffa903622c")} , true) | 0 | 0 | 3 | |
| 59 | db.events_cache.find( {"_id":"9ffdc89883f28273c6a3142b35ce7ef6"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 0 | 14 | |
| 60 | db.events_radius_cache.find( {"_id":"563180eb49997c0742f71e15c75580c3"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 6 | |
| 61 | db.events.find( {"start":{"$gte":"MongoDate(0.00000000 1766037600)"},"event_id":{"$nin":[76064630,76345727,76189460,76285832]},"geo":{"$geoWithin":{"$center":[[-83.48320007324219,42.430599212646484],0.36231884057971014]}}}, ["location_string","event_id","partner_id","address","sef_tail","tags","title","start","end","date_string","time_string","image_url","group_id","group_name","group_sef_tail","venue_name"] ).sort( {"start":1} ).limit( 6 ).skip( 0 ) | 0 | 6 | 240 | |
| 62 | db.events_cache.count( {"_id":"9ffdc89883f28273c6a3142b35ce7ef6"} ) | 0 | 0 | 1 | |
| 63 | db.events_cache.count( {"_id":"9ffdc89883f28273c6a3142b35ce7ef6"} ) | 0 | 0 | 1 | |
| 64 | db.events_cache.insert( {"_id":"9ffdc89883f28273c6a3142b35ce7ef6","town_sef_url":"northville-mi","data_key":["6857c252fb5e4bed1f86ede7","6857c259fb5e4bed1f86f868","689cf7d3410059e7d104a1f0","691bd893de4ae56f5a7c04d0","685913abfb5e4bed1fd9a0f8"],"sort_order":{"start":1},"params":"{\"show\":5,\"title\":\"Events Around Northville\",\"keyword\":\"\",\"radius\":25,\"limit\":15,\"page\":1,\"sef\":\"\",\"tags\":\"\",\"tags_logical\":\"\",\"terms\":\"\",\"show_limit\":3,\"sort\":\"\",\"days\":\"\",\"images\":true,\"max-days\":365,\"max-miles\":45,\"message\":\"[message to follow]\",\"min\":50,\"prompt\":\"\",\"height\":\"\",\"width\":\"\",\"data_id\":\"\",\"more\":true,\"type\":\"\",\"autoshowmore\":false,\"link\":\"\",\"showdesc\":\"\",\"rankby\":\"\",\"empty-message\":\"\",\"ad_slots\":\"\",\"see-more-title\":\"\",\"searchdate\":\"\",\"searchenddate\":\"\",\"lat\":42.430599212646484,\"lng\":-83.48320007324219,\"latlng\":\"42.430599212646,-83.483200073242\",\"city\":\"Northville\",\"state\":\"MI\",\"theme\":\"\",\"page_type\":\"town\",\"grouped\":false,\"has_next_page\":true}","modified":"MongoDate(0.27900000 1766097373)","created":"MongoDate(0.27900000 1766097373)"} , true) | 0 | 0 | 1 | |
| 65 | db.news.find( {"broadcast":{"$in":["usa","northville-mi","mi","wayne-county-mi"]},"$and":[{"tags":{"$ne":"at-p-opinion"}},{"tags":{"$ne":"p-opinion"}}]}, [] ).sort( {"publish_date":-1} ).limit( 6 ).skip( 0 ) | 0 | 6 | 3 | |
| 66 | db.places.find( {"address.town_sef_url":"northville-mi","group_type":"organization"}, [] ).sort( {"created":-1} ).limit( 6 ).skip( 0 ) | 0 | 6 | 9 | |
| 67 | db.answerbook.find( {"featured":true,"category_sef_tail":"home"}, [] ).sort( {"answers":-1,"modified":-1} ).limit( 15 ).skip( 0 ) | 0 | 0 | 6 | |
| 68 | db.answerbook_categories.find( [], ["sef_tail","name"] ).sort( {"category_sequence":1} ).limit( 0 ).skip( 0 ) | 0 | 40 | 1 | |
| 69 | db.towns.find( {"sef_url":"northville-mi"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 70 | db.tokens.find( {"sef_url":{"$in":["usa","mi","wayne-county-mi","northville-mi"]}}, [] ).sort( [] ).limit( 0 ).skip( 0 ) | 0 | 4 | 1 | |
| 71 | db.modules.find( {"name":"AT - Header Script"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 72 | db.modules.find( {"name":"AT - Header Section"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 73 | db.modules.find( {"name":"AT - Nearby Towns"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 74 | db.modules.find( {"name":"AT - Nav Bar"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 75 | db.modules.find( {"name":"CV Cancel"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 76 | db.modules.find( {"name":"AT - Footer Section"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 | |
| 77 | db.modules.find( {"name":"AT - Footer Script"}, [] ).sort( [] ).limit( 1 ).skip( 0 ) | 0 | 1 | 1 |




