AV1DA's picture
Upload 36 files
a349f54 verified
# from django.shortcuts import render
# import numpy as np
# import joblib
# # Load your model
# model = joblib.load('predictor/model.joblib') # Adjust path if needed
# def predict_view(request):
# prediction = None
# if request.method == 'POST':
# rainfall = float(request.POST.get('rainfall'))
# river = float(request.POST.get('river'))
# input_data = np.array([[rainfall, river]])
# result = model.predict(input_data)
# prediction = result[0]
# return render(request, 'predictor_form.html', {'prediction': prediction})
# #This is to test
# from django.http import HttpResponse
# def home(request):
# return HttpResponse("Hello, this is your predictor app homepage!")
# predictor/views.py
import joblib
from django.shortcuts import render
from .forms import PredictionForm
# Load model once globally (adjust path if needed)
model = joblib.load('predictor/model.joblib')
def predict_view(request):
predicted_value = None
if request.method == 'POST':
form = PredictionForm(request.POST)
if form.is_valid():
rainfall = form.cleaned_data['rainfall']
river_level = form.cleaned_data['river_level']
# Make prediction using model
predicted_value = model.predict([[rainfall, river_level]])[0]
flood_status = 'high' if predicted_value > 0.6 else 'low'
else:
form = PredictionForm()
return render(request, 'predictor/predict.html', {
'form': form,
'predicted_value': predicted_value,
})