Comments (8)
Currently in my own projects I access Activity model directly like this (my example of recording activity of commenting):
PublicActivity::Activity.create :key => "activity.post.commented_by",
:owner => current_user, :trackable => @post,
:parameters => {
:summary => truncate(@post.content,:length => 30), #short summary of the contests of post
:author_id => @post.author.id,
:content => truncate(@comment.comment, :length => 30), #short summary of the comment text
:author_name => @post.author.name,
:name => current_user.name,
:id => current_user.id
}
I store everything needed to create links and content in :parameters, so no additional JOINs are used.
from public_activity.
Does that answer your question?
from public_activity.
@pokonski Thanks mate, it does partly :-) In the github example there is a reference to the parent object (github repo). How do you handle that in the above example? And I guess you do more when you render the activities?
from public_activity.
I simply inject the post_id in the html snippet to create HTML link. This is quite ugly so I'll try to think of something better. I don't think adding another polymorphic relation just for this case is the way to go. Will keep you informed on my thoughts about it. If you can come up with a solution I'd gladly consider it!
from public_activity.
@pokonski
Where will I use the code you pasted? In a after_save callback, or in an observer? Or some other better place?
from public_activity.
@computeus sorry for the late reply, but the code simply goes wherever you want it to be. I put it in controllers.
from public_activity.
@bjensen in the current 0.4.0-wip branch we made a feature that lets you create views for activities to display them, giving you a much bigger control over what you want to display. This also gives you the possibility to find the parent through associations.
It is now mentioned in the README.md => https://github.com/pokonski/public_activity/blob/0.4.0-wip/README.md, section "Activity views".
from public_activity.
@computeus Keep in mind that you probably want to create an activity after you validate that the user input is correct. With commented_by
, for example, when the comment is at least 10 characters long.
from public_activity.
Related Issues (20)
- I got this Error only on Heorku even Dev and Prod env is perfect ton local HOT 9
- Gem requires db connection during assets precompile HOT 9
- After setting up public_activity missing render HOT 1
- How to handle activity where parameters is empty? HOT 1
- why public_activity dependency is not resolved by actionpack gem with version 6.0.4 HOT 2
- Random odd failure when PublicActivity.with_tracking used in Rails app with RSpec HOT 1
- Commits for new versions not in Github HOT 2
- Trying to return activity text such as "updated ..." in API HOT 1
- Release notes for 2.0.0 HOT 1
- Issue when tracking is triggered from within a thread HOT 3
- Custom After_Commit callback when activities are created HOT 2
- Callbacks not triggered when used in combination with activerecord-import HOT 2
- DRY Rendering activities using ViewComponent HOT 3
- Psych::DisallowedClass: Tried to load unspecified class: Symbol HOT 5
- Heroku demo site is down HOT 1
- TypeError: no implicit conversion of Symbol into Integer HOT 2
- Was :fallback accidentally left out? HOT 1
- missing keyword: :coder If no default coder is configured, a coder must be provided to `serialize`. rails 7 HOT 10
- ActiveRecord::Base.serialize signature changed when ActiveRecord >= 7.1 HOT 1
- v3 has breaking change (parameters defaults to nil) HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from public_activity.