0

所以我在这部分有点迷失了。在我的网站上,我希望用户能够喜欢个人资料页面。

所以我的逻辑是这样的。我有一个名为 的数据库表user_likes,它包含 3 行,id, user_id, liked_by.

实际的个人资料页面上有一个类似的按钮,上面有一个类似的类。当用户单击它时,将数据插入user likes table并使用 ajax 将按钮文本更改为不一样,并将类更改为不一样。这就是我卡住的部分。

所以个人资料有一个has many relation likes,我可以计算收到的喜欢,但我被困在那部分如何在页面刷新后保持按钮不一样。

因为我的逻辑是这样的(但它失败了):单击按钮,使用 ajax 插入数据,使用 ajax 更改按钮,通过 id 获取喜欢的内容,如果这等于登录的用户 id,则保持按钮不喜欢。

但由于它返回一个数组列表,我不能这样做。

所以我不希望任何人为我编写代码,如果它不是一个很大的要求,我只想给它一个提示。

4

1 回答 1

1

我看到你在FuelPHP论坛上发布了同样的问题,所以在这里我将尝试给你另一个解决方案。

为什么你的关系需要“id、user_id、like_by”?我认为你可以改进你的数据库修改一点你的表。

阅读您的问题,我认为您有这样的结构:

// USER TABLE
id
username
... something more

如果您创建一个名为“LIKE”的表,您将遇到这种情况:

// LIKE
id
created_at
modified_at
... something more

因此,现在您可以使用名为“users_likes”的表创建多对多关系:

// USERS_LIKES 
profile_id   // it wil be related to the user_id, is the user's profile being liked
liker_id     // it will be the user_id of the user that likes the profile

因此,如果您想检索点赞数,您将拥有当前用户模型或配置文件用户模型中的所有信息。

于 2012-11-19T14:10:02.880 回答