i think hash-less urls are working

This commit is contained in:
Noah Levitt 2015-09-25 22:48:01 +00:00
parent 05e15b9667
commit 2e1601ac81
5 changed files with 24 additions and 15 deletions

View File

@ -7,7 +7,7 @@ import sys
logging.basicConfig(stream=sys.stdout, level=logging.INFO, logging.basicConfig(stream=sys.stdout, level=logging.INFO,
format="%(asctime)s %(process)d %(levelname)s %(threadName)s %(name)s.%(funcName)s(%(filename)s:%(lineno)d) %(message)s") format="%(asctime)s %(process)d %(levelname)s %(threadName)s %(name)s.%(funcName)s(%(filename)s:%(lineno)d) %(message)s")
app = flask.Flask(__name__, static_url_path="") app = flask.Flask(__name__)
r = rethinkstuff.Rethinker(["wbgrp-svc020", "wbgrp-svc035", "wbgrp-svc036"], r = rethinkstuff.Rethinker(["wbgrp-svc020", "wbgrp-svc035", "wbgrp-svc036"],
db="archiveit_brozzler") db="archiveit_brozzler")
@ -27,10 +27,12 @@ def jobs():
jobs_ = list(r.table("jobs").run()) jobs_ = list(r.table("jobs").run())
return flask.jsonify(jobs=jobs_) return flask.jsonify(jobs=jobs_)
@app.route("/") @app.route("/", defaults={"path": ""})
def root(): @app.route('/<path:path>')
def root(path):
return app.send_static_file("index.html") return app.send_static_file("index.html")
if __name__ == "__main__": if __name__ == "__main__":
app.run(host="0.0.0.0", port=8081, debug=True) app.run(host="0.0.0.0", port=8081, debug=True)

View File

@ -9,12 +9,13 @@
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/css/bootstrap-theme.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/css/bootstrap-theme.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.6/angular.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.6/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.6/angular-route.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.6/angular-route.js"></script>
<script src="js/app.js"></script> <script src="/static/js/app.js"></script>
<script src="js/controllers.js"></script> <script src="/static/js/controllers.js"></script>
</head> </head>
<body role="document"> <body role="document">
<div class="container" role="main"> <div class="container" role="main">
<a href="/jobs">jobs</a>
<div ng-view></div> <div ng-view></div>
</div> </div>
</body> </body>

View File

@ -5,18 +5,24 @@ var brozzlerConsoleApp = angular.module("brozzlerConsoleApp", [
"brozzlerControllers", "brozzlerControllers",
]); ]);
brozzlerConsoleApp.config(["$routeProvider", brozzlerConsoleApp.config(["$routeProvider", "$locationProvider",
function($routeProvider) { function($routeProvider, $locationProvider) {
$routeProvider. $routeProvider.
when("/jobs", { when("/jobs", {
templateUrl: "partials/jobs.html", templateUrl: "/static/partials/jobs.html",
controller: "JobsListController" controller: "JobsListController"
}). }).
when("/jobs/:id", { when("/jobs/:id", {
templateUrl: "partials/job.html", templateUrl: "/static/partials/job.html",
controller: "JobController" controller: "JobController"
}).
otherwise({
redirectTo: "/jobs"
}); });
// .
// otherwise({
// redirectTo: "/jobs"
// });
$locationProvider.html5Mode({
enabled: true,
requireBase: false,
});
}]); }]);

View File

@ -4,7 +4,7 @@ var brozzlerControllers = angular.module("brozzlerControllers", []);
brozzlerControllers.controller("JobsListController", ["$scope", "$http", brozzlerControllers.controller("JobsListController", ["$scope", "$http",
function($scope, $http) { function($scope, $http) {
$http.get("api/jobs").success(function(data) { $http.get("/api/jobs").success(function(data) {
console.log(data); console.log(data);
$scope.jobs = data.jobs; $scope.jobs = data.jobs;
}); });
@ -13,7 +13,7 @@ brozzlerControllers.controller("JobsListController", ["$scope", "$http",
brozzlerControllers.controller("JobController", ["$scope", "$routeParams", "$http", brozzlerControllers.controller("JobController", ["$scope", "$routeParams", "$http",
function($scope, $routeParams, $http) { function($scope, $routeParams, $http) {
$scope.phoneId = $routeParams.phoneId; $scope.phoneId = $routeParams.phoneId;
$http.get("api/jobs/" + $routeParams.id).success(function(data) { $http.get("/api/jobs/" + $routeParams.id).success(function(data) {
console.log(data); console.log(data);
$scope.job = data; $scope.job = data;
}); });

View File

@ -17,7 +17,7 @@
</thead> </thead>
<tbody> <tbody>
<tr ng-repeat="job in jobs"> <tr ng-repeat="job in jobs">
<td><a href="#/jobs/{{job.id}}">{{job.id}}</a></td> <td><a href="/jobs/{{job.id}}">{{job.id}}</a></td>
<td>{{job.status}}</td> <td>{{job.status}}</td>
<td>{{job.started}}</td> <td>{{job.started}}</td>
<td>{{job.finished}}</td> <td>{{job.finished}}</td>