flask爱家租房项目开发(十)

本文档详细介绍了使用Flask框架开发爱家租房网站的房屋管理功能,包括发布房源信息的后端与前端代码实现,主页房源展示逻辑,城区信息获取以及房屋详情页的管理与测试。提供了各个接口的请求方式、URL和主要业务流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文代码文档下载地址:https://download.youkuaiyun.com/download/geek_xiong/11576968

目录

房屋管理

发布的房屋信息管理

后端代码编写

前端代码编写

我的房源信息管理测试

主页房源管理

后端代码编写

前端代码编写

主页的房源幻灯片展示测试

城区信息的获取

房屋详情页管理

后端代码编写

前端代码编写

详情页展示测试


房屋管理

主要内容是房屋的管理。包括发布的房源展示在个人中心中,主页显示订单量最多的房源图片以及房屋详情页

如图:

发布的房屋信息管理

用户登陆后,进入个人中心的我的房源,如果有发布的话,下边展示房源信息,每页最多显示五个

url:127.0.0.1:5000/user/houses

请求方式:GET

后端代码编写

大致流程:

  • 获取用户id
  • 根据用户id查询所有该用户发布的房子信息(返回的是对象)
  • 将每个房子信息转换成字典,并放入列表中
  • 返回结果
# houses.py

# GET 127.0.0.1:5000/user/houses

@api.route('/user/houses', methods=['GET'])
@login_required
def get_user_houses():
    """获取房东发布的房源信息条目"""
    user_id = g.user_id

    try:
        user = User.query.get(user_id)
        houses = user.houses
    except Exception as e:
        current_app.logger.error(e)
        return jsonify(errno=RET.DBERR, errmsg='获取房信息异常')

    # 将获取的房源信息转换成字典放到列表中
    houses_li = []
    if houses:
        for house in houses:
            houses_li.append(house.to_basic_dict())
    return jsonify(errno=RET.OK, errmsg='OK', data={"houses": houses_li})

其中转换成字典,封装在了models类中

# models.py


class House(...):
    ...

    def to_basic_dict(self):
        """将基本信息转换为字典"""
        house_dict = {
            "house_id": self.id,
            "title": self.title,
            "price": self.price,
            "area_name": self.area.name,
            "img_url": constants.QINIU_URL_DOMAIN + self.index_image_url if self.index_image_url else "",
            "room_count": self.room_count,
            "order_count": self.order_count,
            "address": self.address,
            "user_avatar": constants.QINIU_URL_DOMAIN + self.user.avatar_url if self.user.avatar_url else "",
            "ctime": self.create_time.strftime("%Y-%m-%d")
        }
        return house_dict

前端代码编写

首先用户必须是登陆的状态,否则直接进入登陆界面

其次判断用户是否进行过实名认证,

如果认证过,直接显示发布的房源信息,并显示发布按钮

如果没有认证过,只显示去实名认证的按钮,不显示发布按钮与发布的房源信息(防止在数据库添加的显示在页面中)

URL:

  • 实名认证:127.0.0.1:5000/api/v1.0/users/auth
  • 获取发布的房屋信息:127.0.0.1:5000/api/v1.0/user/houses
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秒不可闫M先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值