Esempio n. 1
0
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)
Esempio n. 2
0
 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
Esempio n. 3
0
    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)
Esempio n. 4
0
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")
Esempio n. 5
0
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())
Esempio n. 6
0
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)
Esempio n. 7
0
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)
Esempio n. 8
0
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)
Esempio n. 9
0
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)