ruby-on-rails – 在rails中喜欢用户配置文件
发布时间:2020-12-17 02:05:42 所属栏目:百科 来源:网络整理
导读:所以我创建了一个具有用户配置文件的网络应用程序,用户可以根据兴趣等搜索其他用户.如何添加用户可以收藏个人资料的功能?即用户A找到用户B并喜欢他们看到的内容,并且可以点击“收藏此个人资料”按钮,也许它已加星标并存储?这段代码会是什么样的?只是一个
所以我创建了一个具有用户配置文件的网络应用程序,用户可以根据兴趣等搜索其他用户.如何添加用户可以收藏个人资料的功能?即用户A找到用户B并喜欢他们看到的内容,并且可以点击“收藏此个人资料”按钮,也许它已加星标并存储?这段代码会是什么样的?只是一个想法,但我对所有想法持开放态度.
user_profile.html.erb <%= render "shared/header" %> <div id="landing_welcome_page"> <div class="container"> <div class="row"> <%#= Profile image upload %> <div class="span4"> <%= user_avatar(current_user) %> <%#= Space w line %> <div class="name"></div><br> <%#= Please bare in mind these are strickly temporary placeholders i.e whitespace %> <%= render 'social' %> </div> <div class="span8"> <%# User name %> <span class="name1"> <% if current_user.first_name.blank? %> <%= current_user.first_name.present? ? current_user.first_name : link_to('Finish your profile',edit_account_path)%> <% else %> <%= current_user.first_name %> <%= current_user.last_name %> <% end %> </span> <span class="side-buttons"> <div class="name"></div> </span> </span> </div> <div class="row"> <br /> <div class="span6"> <%# User occupation %> <i class="fa fa-usd"></i>: <%= best_in_place current_user,:occupation,nil: 'Add occupation' %> </div> <div class="addy"> <div class="span2"> <%# User address %> <i class="fa fa-home"></i>: <%= current_user.address.present? ? current_user.address : link_to('Add Address',edit_account_path) %> </div> </div> <div class="span6"> <%# User gender %> <br /> <% if current_user.gender == "M" || "male" %> <i class="fa fa-male"></i> Male <% else %> <i class="fa fa-female"></i> Female <% end %> </div> <div class="span2"> <!-- Code to calculate age by user birthday --> <br /> Age: <%= user_birthday %> </div> <div class="span8"></div> <div class="span8"><div class="name"></div></div> <div class="span8"> <div class="tabbable"> <!-- Only required for left/right tabs --> <ul class="nav nav-tabs"> <li class="active"><a href="#tab1" data-toggle="tab">About me</a></li> <li><a href="#tab2" data-toggle="tab">Photos</a></li> <li><a href="#tab3" data-toggle="tab">Personality</a></li> </ul> <div class="tab-content"> <div class="tab-pane in active" id="tab1"> <% @questions_for_about.each_with_index do |question,index| %> <div class="question"> <h4 class="user_questions"> <%= index + 1 %>. <%= question.question %> <%= link_to ("<i class='icon-edit'></i>".html_safe),edit_user_question_path(current_user,question),remote: true,class: "edit_link_#{question.id}" %> </h4> <div class="answer" id="answer_<%= question.id %>"> <%= answer_for(question) %> </div> </div> <% end %> </div> <div class="tab-pane" id="tab2"> <div class="page-header"> <%= form_for Photo.new do |f| %> <span class="btn btn-success fileinput-button"> <i class="icon-plus icon-white"></i> <span>Add photos...</span> <%= f.file_field :file,multiple: true,name: "photo[file]" %> </span> <% end %> <div class="clearfix"></div> </div> <div class="photos_cont"> <div class="col-sm-6 col-md-3"> <span class="gallery"><%= render current_user.photos %></span> </div> </div> </div> <div class="tab-pane" id="tab3"> <% @questions_for_personality.each_with_index do |question,class: "edit_link_#{question.id}" %> </h4> <div class="answer" id="answer_<%= question.id %>"> <%= answer_for(question) %> </div> </div> <% end %> </div> </div> </div> </div> </div> <%= render '/shared/footer' %> </div> </div> <script id="template-upload" type="text/x-tmpl"> <div class="upload"> {%=o.name%} <div class="progress"><div class="bar" style="width: 0%;"></div></div> </div> </script> <script> var fb_param = {}; fb_param.pixel_id = '6009056882201'; fb_param.value = '0.00'; (function(){ var fpw = document.createElement('script'); fpw.async = true; fpw.src = '//connect.facebook.net/en_US/fp.js'; var ref = document.getElementsByTagName('script')[0]; ref.parentNode.insertBefore(fpw,ref); })(); </script> <noscript> <img height="1" src="https://www.facebook.com/offsite_event.php?id=6009056882201&value=0" style="display:none;" width="1"/> </noscript> <script type="text/javascript"> // remove default datepicker event jQuery(document).off('best_in_place:datepicker'); jQuery(document).on('best_in_place:datepicker',function(event,bip,element) { // Display the jQuery UI datepicker popup jQuery(element).find('input') .datepicker({ format: element.data('date-format') }) .on('hide',function(){ bip.update(); }) .on('changeDate',function(){ $(this).datepicker('hide'); }) .datepicker('show'); }); </script> 解决方法
使用与用户的has_and_belongs_to_many关系创建收藏夹模型
创建“收藏夹”模型并设置关系后,您可以执行以下操作: @user.favorites = [ user1,user2,user3 ] @user.favorites << user4 将收藏夹分配给用户,或者使用以下内容显示它们: <%= @user.favorites.map(&:name).to_sentence %> 您将在此处找到有关如何执行此操作的所有信息:http://guides.rubyonrails.org/association_basics.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |