1. 程式人生 > >移動端實現專案

移動端實現專案

1 引言

利用Hbuilder盡行手機app開發,有以下幾點好處:
(1)已有的web專案可以很快速的改成手機app
(2)開發一次雙端執行(ios,安卓)
(3)開發簡單,會基本的html就能開發

2 具體實現

其實與之前寫的B/S相似,手機端主要實現圖片上傳功能,而後臺則根據上傳的圖片進行分類查詢資料庫返回結果。這裡我將後臺的識別結果頁面整體返回(可以理解成將後臺頁面嵌在app中)。一下是主要部分程式碼實現:
(1)html部分

<form action="http://39.107.81.82:80/appupload/" method="post" enctype="multipart/form-data"
> <input type="file" class="pic" id="img" name="pic1"> <button type="button" class="btn" id="tp">選擇圖片</button> <br /> <div class="sub"><input type="submit" id="sub"/></div> <button type="button" data-loading-text="識別中" id="tt" class="btn mui-btn"
>識別種類</button> </form>

(2)後臺處理

def appupload(request):
    if request.method == "POST":
        f1 = request.FILES['pic1']
        # 用於識別
        fname = '%s/pic/%s' % (settings.MEDIA_ROOT, f1.name)
        with open(fname, 'wb') as pic:
            for c in f1.chunks():
                pic.write(c)
        # 用於顯示
fname1 = './static/img/%s' % f1.name with open(fname1, 'wb') as pic: for c in f1.chunks(): pic.write(c) num = testcat(f1.name) if (num == 0): num = 4 # 通過id獲取貓的資訊 name = models.Catinfo.objects.get(id = num) return render(request, 'app.html', {'nameinfo': name.nameinfo, 'feature': name.feature, 'livemethod': name.livemethod, 'feednn': name.feednn, 'feedmethod': name.feedmethod, 'picname': f1.name}) else: return HttpResponse("上傳失敗!")

其中app.html為識別結果詳情

效果展示:
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述