def newhouse(): if request.method == 'GET': return render_template('newhouse.html') if request.method == 'POST': # 把表格数据存入字典 data = {} # 循环遍历表格数据的name for item in request.form: if item != 'facility': # 存入字典 data[item] = request.form.get(item) # 如果没有填写数据,就发生提示信息 if not data[item]: return jsonify(status_code.USER_LOGIN_INFO_VALID) # 存入数据库 ahouse = House(**data) # 获取当前登录用户,并把数据存入对应的用户 ahouse.user_id = current_user.id # 获取facility数据,由于有多个name=checkbox,所以用getlist方法,把facility存入一个列表 for item in request.form.getlist('facility'): # 循环遍历列表从Facility表格获取对应的item信息,并把item信息赋值于f f = Facility.query.get(item) # 可能会有多个f, 所以以列表形式存入House表 ahouse.facilities.append(f) ahouse.add_update() return jsonify(code=status_code.SUCCESS['code'], house_id=ahouse.id)
def createCasa(self, addressNumber2): building = Building(real_estate=self, propertyType=Building.TYPE_CASA) building.save() casa = House(building=building, addressNumber2=addressNumber2) casa.save() self.buildings.add(building) self.save() return casa
def handle(self, *args, **kwargs): latitude_range = (12.000000, 13.000000) longitude_range = (77.000000, 78.000000) house_objs = [] used_lat_longs = [] for _, index in enumerate(range(25000)): latitude = round(random.uniform(*latitude_range), 6) longitude = round(random.uniform(*longitude_range), 6) if (latitude, longitude) in used_lat_longs: continue used_lat_longs.append((latitude, longitude)) bedrooms = random.randint(1, 4) bathrooms = random.randint(max(bedrooms - 1, 1), bedrooms) name = ( f"{random.choice(['Elegant', 'Luxurious', 'Well-Designed'])} " f"{bedrooms}BHK " f"{random.choice(['House', 'Apartment'])} " f"with {bathrooms} bathrooms") print(f"Creating {index + 1}. {name}...") price = 100000 + 10000 * bedrooms + random.randint(10, 20) * 1000 house = House( name=name, latitude=latitude, longitude=longitude, price=price, bedrooms=bedrooms, bathrooms=bathrooms, ) house_objs.append(house) House.objects.bulk_create(house_objs)
def search_suggest(request): key_words = request.GET.get('s', '') re_datas = [] if key_words: s = House.search() s = s.suggest('my_suggest', key_words, completion={ "field": "region_suggest", "fuzzy": { "fuzziness": 2 }, "size": 8 }) res = s.execute() for match in res.suggest.my_suggest[0].options: source = match._source re_datas.append(source["region"]) print(re_datas) return HttpResponse(json.dumps(re_datas), content_type="application/json")
def add_handle(request): userid = request.session.get("user_id") post = request.POST tit = post.get("title") pri = post.get("price") housetype = post.get("house_type") rentype = post.get("rent_type") img = post.get("img") flo = post.get("floor") com = post.get("community") regi = post.get("region") addre = post.get("address") facili = post.getlist("facility") area = post.get("area") for info in [ tit, pri, housetype, rentype, img, flo, com, regi, addre, facili, userid, area, ]: print(info, type(info)) print("*" * 100) house = House() house.price = int(pri) house.name = tit house.house_type = housetype house.rent_type = rentype house.image = img house.community = com house.region = regi house.address = addre house.floor = flo + "层" house.user_id = userid house.area_id = int(area) house.save() print("*" * 200) for fid in facili: fac = Facility.objects.get(pk=int(fid)) print(fac, type(fac)) house.facility.add(fac) house.save() print("添加成功") print("*" * 100) houses_list = House.objects.filter(user_id=userid) return render(request, "user/my_publish.html", locals())
def addhouse(request): if request.method == 'POST': form = HouseForm(request.POST, request.FILES) if form.is_valid(): current_user = request.user data = House() data.user_id = current_user.id data.title = form.cleaned_data['title'] data.category = form.cleaned_data['category'] data.keywords = form.cleaned_data['keywords'] data.description = form.cleaned_data['description'] data.slug = form.cleaned_data['slug'] data.image = form.cleaned_data['image'] data.rent = form.cleaned_data['rent'] data.detail = form.cleaned_data['detail'] data.status = 'False' data.area = form.cleaned_data['area'] data.location = form.cleaned_data['location'] data.room = form.cleaned_data['room'] data.buildingFloor = form.cleaned_data['buildingFloor'] data.floorLocation = form.cleaned_data['floorLocation'] data.furnished = form.cleaned_data['furnished'] data.balconied = form.cleaned_data['balconied'] data.heating = form.cleaned_data['heating'] data.withintheSite = form.cleaned_data['withintheSite'] data.fromWho = form.cleaned_data['fromWho'] data.save() messages.success(request, 'Your house added successfully!') return HttpResponseRedirect('/user/houses') else: messages.success(request, 'Your form error! :' + str(form.errors)) return HttpResponseRedirect('/user/addhouse') else: category = Category.objects.all() form = HouseForm() context = {'category': category, 'form': form} return render(request, 'user_addhouse.html', context)
def addhouse(request): if request.method == 'POST': form = HouseForm(request.POST, request.FILES) if form.is_valid(): current_user = request.user data = House() data.userOwner_id = current_user.id data.title = form.cleaned_data['title'] data.slug = form.cleaned_data['slug'] data.description = form.cleaned_data['description'] data.keywords = form.cleaned_data['keywords'] data.category = form.cleaned_data['category'] data.price = form.cleaned_data['price'] data.buildTime = form.cleaned_data['buildTime'] data.city = form.cleaned_data['city'] data.district = form.cleaned_data['district'] data.locationDetail = form.cleaned_data['locationDetail'] data.area = form.cleaned_data['area'] data.bedroom = form.cleaned_data['bedroom'] data.bathroom = form.cleaned_data['bathroom'] data.garage = form.cleaned_data['garage'] data.detail = form.cleaned_data['detail'] data.image = form.cleaned_data['image'] data.status = False data.save() messages.success(request, "ilan başarıyla eklendi") return HttpResponseRedirect('/user/myhouses') else: messages.warning(request, 'İlan Formu Hata verdi:' + str(form.errors)) return HttpResponseRedirect('user/myhouses') else: category = Category.objects.all() form = HouseForm() setting = Setting.objects.get(pk=1) context = { 'setting': setting, 'category': category, 'form': form, } return render(request, 'user_addhouse.html', context)
def addhouse(request): if request.method == 'POST': form = HouseForm(request.POST, request.FILES) if form.is_valid(): current_user = request.user data = House() data.user_id = current_user.id data.title = form.cleaned_data['title'] data.keywords = form.cleaned_data['keywords'] data.description = form.cleaned_data['description'] data.image = form.cleaned_data['image'] data.category = form.cleaned_data['category'] data.slug = form.cleaned_data['slug'] data.detail = form.cleaned_data['detail'] data.status = 'False' data.save() messages.success(request, 'Your House Inserted Successfuly') return HttpResponseRedirect('/user/houses') else: messages.success(request, 'Content Form Error :' + str(form.errors)) return HttpResponseRedirect('/user/addhouse') else: category = Category.objects.all() form = HouseForm() context = { 'category': category, 'form': form, } return render(request, 'user_addhouse.html', context)
def add_rent(request): if request.method == 'POST': form = UserRentHouseForm(request.POST, request.FILES) if form.is_valid(): current_user = request.user data = House() data.user_id = current_user.id data.category = form.cleaned_data['category'] data.title = form.cleaned_data['title'] data.keywords = form.cleaned_data['keywords'] data.description = form.cleaned_data['description'] data.image = form.cleaned_data['image'] data.address = form.cleaned_data['address'] data.price = form.cleaned_data['price'] data.room = form.cleaned_data['room'] data.balcony = form.cleaned_data['balcony'] data.heating = form.cleaned_data['heating'] data.stuff = form.cleaned_data['stuff'] data.status = 'False' data.detail = form.cleaned_data['detail'] data.slug = form.cleaned_data['slug'] data.save() messages.success(request, "Başarıyla eklendi") return HttpResponseRedirect('/user/userrent') else: messages.success(request, " Hata") return HttpResponseRedirect('/') else: category = Category.objects.all() form = UserRentHouseForm() context = {'category': category, 'form': form} return render(request, 'user_addrent.html', context)