当前位置: 首页 > 面试题库 >

用户帖子的rails ajax fav按钮

太叔炎彬
2023-03-14
问题内容

我已经查询了用户帖子(显然是嵌套资源),并且有一长串来自不同用户的帖子。我希望用户能够单击每个帖子旁边的小星星,以通过ajax收藏该特定帖子。关于如何实现这一目标的任何建议?我遇到的麻烦是一页上有多个收藏夹按钮,偏爱多个帖子。

这有点像Gmail在收件箱中使用收藏的电子邮件那样。其实就是这样


问题答案:

首先,您需要设置数据库来处理此问题,就我个人而言,我将使用has_many:through关联,因为它比has_and_belongs_to_many具有更大的灵活性。但是,选择取决于您。我建议您在API中查找不同的类型,然后自己决定。此示例将处理has_many:through。

楷模

# user.rb (model)
has_many :favorites
has_many :posts, :through => :favorites

# post.rb (model)
has_many :favorites
has_many :users, :through => :favorites

# favorite.rb (model)
belongs_to :user
belongs_to :post

控制者

# favorites_controller.rb
def create
  current_user.favorites.create(:post_id => params[:post_id])
  render :layout => false
end

路线

match "favorites/:post_id" => "favorites#create", :as => :favorite

jQuery的

$(".favorite").click(function() {
  var post_id = $(this).attr('id');
  $.ajax({
    type: "POST",
    url: 'favorites/' + post_id,
    success: function() {
      // change image or something
    }
  })
})

笔记

这假设了两件事:使用Rails 3,使用jQuery,每个喜欢的图标都有一个带有帖子ID的html
ID。请记住,我尚未测试代码,而是在此窗口中编写的,因此您可能必须修复一些小问题,但它应该使您对
通常的操作方式有一个印象。视觉的东西,等等,我会留给你的。

如果有人发现任何错误,请随时编辑此帖子。



 类似资料:
  • 我找了很多,但没有找到任何答案,所以我希望你能帮助我! 我有三个表:post、users和post\U users。Post_users包含两列:user_id和Post_id。 我需要得到一个有口才的用户的所有帖子。有什么想法吗? 非常感谢你! (如果这个问题已经存在,我很抱歉,但我还没有找到它)

  • 你好,我想找到用户所做的帖子... 我使用JWT令牌执行请求: 这是我的创建函数: 这是我的函数,我想在其中获取用户发表的帖子: 这是我为博文准备的模型: 每次我做一个请求它有这个错误: 我的生成令牌:

  • 问题内容: 我有一个包含以下两个表的数据库, USERS,POSTS 我正在寻找一种方法来获取用户拥有的帖子数。 我尝试了以下SQL命令的许多变体,但均未成功。与其显示单个用户的帖子数,不如显示一行包含所有帖子的数。 最后我想要这样的东西 问题答案: 弄清楚了。

  • 我需要加载实体以及表示特定用户(当前登录用户)投票的实体。这是两个实体: 所有关联都是单向的。我不使用OneToMany的原因是集合太大,需要在访问之前进行适当的分页:不向我的实体中添加与任何实体的关联意味着防止任何人天真地执行类似于for(PostVote pv:post.getPostVoices())的操作。 对于我现在面临的问题,我有各种各样的解决方案:在我看来,没有一个是完全令人信服的。

  • 我创建了一个WordPress自定义帖子类型,然后我创建了REST API自定义endpoint以获取所有帖子运行良好。然后我创建了另一个自定义endpoint以按ID获取单个帖子。例如http://localhost:8888/wordpress/wp-json/lc/v1/cars/120 我已经创建了一些帖子,每次我将路线末端的ID更改为118或116时,它都会显示最新的post-ID 12

  • 我在一个网站上工作,我有问题,喜欢脸谱网的Buttom,当有人做一个帖子时,它应该显示喜欢的按钮,但我没有看到它 我看到一个类似的问题,其中一个用户说如果我们使用Facebook LINTER- 这是我从链接中得到的 打开应修复的图形警告 > 推断属性:应该显式提供'og:url'属性,即使可以从其他标记推断值。 推断属性:应明确提供“og:title”属性,即使可以从其他标记推断值。 推断属性: