我尝试从角度传递参数到django的view.py.的import UIKit
class ViewControllerA: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var myTableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
myTableView.delegate = self
myTableView.dataSource = self
if #available(iOS 10.0, *) {
let refreshControl = UIRefreshControl()
let title = NSLocalizedString("PullToRefresh", comment: "Pull to refresh")
refreshControl.attributedTitle = NSAttributedString(string: title)
refreshControl.addTarget(self,
action: #selector(refreshOptions(sender:)),
for: .valueChanged)
myTableView.refreshControl = refreshControl
}
}
@objc private func refreshOptions(sender: UIRefreshControl) {
// Perform actions to refresh the content
// ...
// and then dismiss the control
sender.endRefreshing()
}
// MARK: - Table view data source
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 12
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "reuseIdentifier", for: indexPath)
cell.textLabel?.text = "Cell \(String(indexPath.row))"
return cell
}
}
请求。
我回来的网址是GET
并且他们都没有在/contact/api/getName?name=John
中点击api_get_client_info
,因为正在打印views.py
内的字符串和值。但我获得了成功"请求后的消息。
HTML:
api_get_client_info
角度控制器中的$ http.get请求:
<select ng-change="selectName(name)" ng-model="name">
<option value="" disabled>Select from List</option>
<option ng-repeat="name in nameList" value="{{name.Name}}"> {{name.Name}} </option>
</select>
Django url.py
$scope.selectName= function(name){
Method 1:
$http.get("/contact/api/getName", {params: {"personName": name}})
.success(function(response) {
console.log("success");
})
.error(function(response){
console.log("failed");
})
Method 2:
$http({
method:'GET',
url: '/contact/api/getName?=' + name
})
.success(function(data) {
console.log("success");
})
.error(function(data){
console.log("failed");
})
}
Django views.py
urlpattern = [
url(r'^api/getName(?P<personName>[a-zA-Z0-9_]+)/$', views.api_get_person_info),
url(r'', views.main, name='contact',
]
答案 0 :(得分:1)
我认为你的意思是api_get_person_info
内的陈述是而不是正在打印。
这是因为您的网址不匹配。您的模式需要URL本身中的personName:ie api/getName/John/
,但您要在查询字符串api/getName?personName=John
中传递参数。你应该只使用r'^api/getName$'
。
你获得200的原因是因为第二种模式,contact
, 匹配;你没有终止正则表达式,所以它匹配一切。该模式应为r'^$'
。